TensorFlow 1 version View source on GitHub

Logical AND function.

    x, y, name=None

The operation works for the following input types:

  • Two single elements of type bool
  • One tf.Tensor of type bool and one single bool, where the result will be calculated by applying logical AND with the single element to each element in the larger Tensor.
  • Two tf.Tensor objects of type bool of the same shape. In this case, the result will be the element-wise logical AND of the two input tensors.


a = tf.constant([True]) 
b = tf.constant([False]) 
tf.math.logical_and(a, b) 
<tf.Tensor: shape=(1,), dtype=bool, numpy=array([False])> 
c = tf.constant([True]) 
x = tf.constant([False, True, True, False]) 
tf.math.logical_and(c, x) 
<tf.Tensor: shape=(4,), dtype=bool, numpy=array([False,  True,  True, False])> 
y = tf.constant([False, False, True, True]) 
z = tf.constant([False, True, False, True]) 
tf.math.logical_and(y, z) 
<tf.Tensor: shape=(4,), dtype=bool, numpy=array([False, False, False,  True])> 


  • x: A tf.Tensor type bool.
  • y: A tf.Tensor of type bool.
  • name: A name for the operation (optional).


A tf.Tensor of type bool with the same size as that of x or y.