# tf.math.reduce_all

Computes `tf.math.logical_and` of elements across dimensions of a tensor.

### Used in the notebooks

Used in the tutorials

This is the reduction operation for the elementwise `tf.math.logical_and` op.

Reduces `input_tensor` along the dimensions given in `axis`. Unless `keepdims` is true, the rank of the tensor is reduced by 1 for each of the entries in `axis`, which must be unique. If `keepdims` is true, the reduced dimensions are retained with length 1.

If `axis` is None, all dimensions are reduced, and a tensor with a single element is returned.

#### For example:

````x = tf.constant([[True,  True], [False, False]])`
`tf.math.reduce_all(x)`
`<tf.Tensor: shape=(), dtype=bool, numpy=False>`
`tf.math.reduce_all(x, 0)`
`<tf.Tensor: shape=(2,), dtype=bool, numpy=array([False, False])>`
`tf.math.reduce_all(x, 1)`
`<tf.Tensor: shape=(2,), dtype=bool, numpy=array([ True, False])>`
```

`input_tensor` The boolean tensor to reduce.
`axis` The dimensions to reduce. If `None` (the default), reduces all dimensions. Must be in the range ```[-rank(input_tensor), rank(input_tensor))```.
`keepdims` If true, retains reduced dimensions with length 1.
`name` A name for the operation (optional).

The reduced tensor.

## numpy compatibility

Equivalent to np.all

[{ "type": "thumb-down", "id": "missingTheInformationINeed", "label":"Mancano le informazioni di cui ho bisogno" },{ "type": "thumb-down", "id": "tooComplicatedTooManySteps", "label":"Troppo complicato/troppi passaggi" },{ "type": "thumb-down", "id": "outOfDate", "label":"Obsoleti" },{ "type": "thumb-down", "id": "samplesCodeIssue", "label":"Samples / code issue" },{ "type": "thumb-down", "id": "otherDown", "label":"Altra" }]
[{ "type": "thumb-up", "id": "easyToUnderstand", "label":"Facile da capire" },{ "type": "thumb-up", "id": "solvedMyProblem", "label":"Il problema è stato risolto" },{ "type": "thumb-up", "id": "otherUp", "label":"Altra" }]