And#

  • Domain: ai.onnx

  • Since version: 7

Returns the tensor resulted from performing the And logical operation elementwise on the input tensors A and B (with Numpy-style broadcasting support).

Inputs

  • A (T): First input operand for the logical operator.

  • B (T): Second input operand for the logical operator.

Outputs

  • C (T1): Result tensor.

Type Constraints

  • T: Constrain input to boolean tensor. Allowed types: tensor(bool).

  • T1: Constrain output to boolean tensor. Allowed types: tensor(bool).

Examples#

test_and2d

Inputs:
  x: shape=(3, 4), dtype=bool
    [[ True, False, False,  True],
     [ True, False,  True,  True],
     [ True,  True, False, False]]
  y: shape=(3, 4), dtype=bool
    [[ True, False,  True,  True],
     [False, False, False,  True],
     [ True,  True, False,  True]]

Outputs:
  and: shape=(3, 4), dtype=bool
    [[ True, False, False,  True],
     [False, False, False,  True],
     [ True,  True, False, False]]

test_and3d

Inputs:
  x: shape=(3, 4, 5), dtype=bool
    [[[ True,  True,  True, False, False],
      [False, False,  True,  True, False],
      [ True,  True,  True,  True, False],
      [False, False, False,  True,  True]],

     [[False,  True, False, False, False],
      [False,  True, False, False, False],
      [ True, False,  True,  True, False],
      [False, False,  True,  True, False]],

     [[ True, False,  True, False,  True],
      [False, False, False,  True, False],
      [False, False,  True,  True, False],
      [False, False, False,  True, False]]]
  y: shape=(3, 4, 5), dtype=bool
    [[[ True, False,  True,  True,  True],
      [False, False, False, False,  True],
      [False,  True, False, False,  True],
      [False, False,  True,  True,  True]],

     [[False,  True,  True, False, False],
      [False, False,  True, False, False],
      [False,  True, False, False,  True],
      [False,  True, False,  True,  True]],

     [[ True, False, False,  True, False],
      [False, False, False,  True,  True],
      [ True, False,  True, False, False],
      [ True, False,  True,  True,  True]]]

Outputs:
  and: shape=(3, 4, 5), dtype=bool
    [[[ True, False,  True, False, False],
      [False, False, False, False, False],
      [False,  True, False, False, False],
      [False, False, False,  True,  True]],

     [[False,  True, False, False, False],
      [False, False, False, False, False],
      [False, False, False, False, False],
      [False, False, False,  True, False]],

     [[ True, False, False, False, False],
      [False, False, False,  True, False],
      [False, False,  True, False, False],
      [False, False, False,  True, False]]]

test_and4d

Inputs:
  x: shape=(3, 4, 5, 6), dtype=bool
    [[[[False,  True,  True, False, False,  True],
       [False,  True,  True,  True,  True,  True],
       [False, False,  True,  True,  True, False],
       [ True,  True,  True, False,  True,  True],
       [ True, False,  True, False, False, False]],

      [[ True,  True, False, False, False,  True],
       [False, False, False, False, False, False],
       [ True,  True,  True,  True,  True, False],
       [ True, False,  True,  True, False, False],
       [False,  True,  True, False, False, False]],

      [[False,  True, False,  True,  True,  True],
       [False, False, False,  True,  True, False],
       [False,  True,  True,  True, False,  True],
       [False,  True,  True,  True,  True, False],
       [ True,  True, False, False,  True, False]],

      [[ True,  True,  True,  True, False, False],
       [ True,  True, False,  True,  True, False],
       [ True, False, False,  True,  True, False],
       [ True,  True, False,  True, False, False],
       [ True,  True,  True, False,  True, False]]],


     [[[False, False, False,  True, False, False],
       [ True,  True, False,  True, False,  True],
       [False,  True,  True, False, False, False],
       [False, False, False,  True,  True,  True],
       [False, False,  True,  True, False,  True]],

      [[False, False,  True,  True,  True, False],
       [ True,  True, False, False,  True, False],
       [False,  True, False, False, False, False],
       [ True,  True, False,  True,  True,  True],
       [False, False,  True, False, False,  True]],

      [[ True, False,  True,  True, False, False],
       [ True,  True, False, False, False,  True],
       [False,  True, False,  True, False,  True],
       [False,  True, False,  True,  True, False],
       [False, False, False, False, False,  True]],

      [[False,  True, False, False, False, False],
       [ True,  True,  True, False,  True,  True],
       [ True, False,  True, False, False, False],
       [False, False, False, False, False, False],
       [ True, False, False,  True,  True, False]]],


     [[[ True, False,  True, False,  True,  True],
       [False, False, False, False,  True,  True],
       [False,  True,  True, False, False, False],
       [False, False, False,  True,  True, False],
       [False,  True,  True,  True,  True,  True]],

      [[False,  True,  True,  True,  True,  True],
       [False,  True,  True,  True,  True, False],
       [ True,  True,  True,  True,  True,  True],
       [ True, False, False,  True, False, False],
       [ True,  True, False,  True,  True, False]],

      [[ True, False,  True, False,  True, False],
       [False, False,  True,  True, False, False],
       [ True,  True, False,  True,  True,  True],
       [False, False,  True, False,  True,  True],
       [False, False, False,  True, False,  True]],

      [[False, False, False,  True, False,  True],
       [ True, False,  True,  True, False, False],
       [False,  True,  True, False, False,  True],
       [False, False, False, False,  True,  True],
       [ True, False, False,  True,  True, False]]]]
  y: shape=(3, 4, 5, 6), dtype=bool
    [[[[False,  True,  True,  True,  True, False],
       [ True, False, False, False,  True, False],
       [False, False,  True,  True,  True,  True],
       [False,  True,  True,  True,  True,  True],
       [False, False,  True,  True, False,  True]],

      [[ True, False, False,  True,  True,  True],
       [False, False, False, False,  True, False],
       [ True,  True,  True, False,  True, False],
       [False,  True,  True,  True, False, False],
       [False,  True, False,  True, False,  True]],

      [[False, False, False, False,  True, False],
       [ True,  True, False,  True,  True,  True],
       [False, False,  True, False,  True, False],
       [ True,  True,  True, False,  True,  True],
       [ True,  True, False,  True,  True, False]],

      [[ True, False, False, False, False, False],
       [False, False, False, False, False, False],
       [False, False, False, False, False, False],
       [ True,  True,  True, False, False,  True],
       [ True,  True, False, False, False,  True]]],


     [[[False, False, False,  True,  True, False],
       [ True, False, False, False,  True,  True],
       [ True,  True,  True, False, False, False],
       [False, False, False, False, False, False],
       [False,  True, False,  True,  True,  True]],

      [[ True, False, False, False, False, False],
       [False, False, False,  True, False,  True],
       [ True, False, False,  True,  True, False],
       [False,  True, False, False, False,  True],
       [False,  True,  True, False,  True,  True]],

      [[ True,  True,  True, False,  True,  True],
       [ True,  True,  True,  True, False, False],
       [ True, False,  True, False, False, False],
       [False, False, False, False, False, False],
       [False, False, False,  True,  True,  True]],

      [[False,  True, False,  True, False,  True],
       [False,  True, False,  True,  True,  True],
       [ True,  True,  True,  True,  True, False],
       [ True,  True, False, False,  True, False],
       [ True, False, False, False,  True, False]]],


     [[[False, False,  True, False,  True,  True],
       [ True, False, False, False,  True,  True],
       [ True,  True,  True,  True,  True, False],
       [False,  True, False, False, False, False],
       [ True, False, False, False, False,  True]],

      [[False, False, False, False, False,  True],
       [ True,  True,  True, False,  True, False],
       [ True, False,  True, False,  True,  True],
       [ True,  True,  True,  True, False, False],
       [False, False, False, False, False,  True]],

      [[ True,  True,  True,  True,  True,  True],
       [ True, False,  True,  True,  True,  True],
       [ True,  True,  True,  True,  True,  True],
       [False, False,  True,  True,  True,  True],
       [ True, False, False, False,  True, False]],

      [[ True,  True, False,  True,  True,  True],
       [False, False, False,  True,  True, False],
       [False,  True,  True,  True,  True, False],
       [False, False,  True, False, False, False],
       [False,  True,  True, False, False, False]]]]

Outputs:
  and: shape=(3, 4, 5, 6), dtype=bool
    [[[[False,  True,  True, False, False, False],
       [False, False, False, False,  True, False],
       [False, False,  True,  True,  True, False],
       [False,  True,  True, False,  True,  True],
       [False, False,  True, False, False, False]],

      [[ True, False, False, False, False,  True],
       [False, False, False, False, False, False],
       [ True,  True,  True, False,  True, False],
       [False, False,  True,  True, False, False],
       [False,  True, False, False, False, False]],

      [[False, False, False, False,  True, False],
       [False, False, False,  True,  True, False],
       [False, False,  True, False, False, False],
       [False,  True,  True, False,  True, False],
       [ True,  True, False, False,  True, False]],

      [[ True, False, False, False, False, False],
       [False, False, False, False, False, False],
       [False, False, False, False, False, False],
       [ True,  True, False, False, False, False],
       [ True,  True, False, False, False, False]]],


     [[[False, False, False,  True, False, False],
       [ True, False, False, False, False,  True],
       [False,  True,  True, False, False, False],
       [False, False, False, False, False, False],
       [False, False, False,  True, False,  True]],

      [[False, False, False, False, False, False],
       [False, False, False, False, False, False],
       [False, False, False, False, False, False],
       [False,  True, False, False, False,  True],
       [False, False,  True, False, False,  True]],

      [[ True, False,  True, False, False, False],
       [ True,  True, False, False, False, False],
       [False, False, False, False, False, False],
       [False, False, False, False, False, False],
       [False, False, False, False, False,  True]],

      [[False,  True, False, False, False, False],
       [False,  True, False, False,  True,  True],
       [ True, False,  True, False, False, False],
       [False, False, False, False, False, False],
       [ True, False, False, False,  True, False]]],


     [[[False, False,  True, False,  True,  True],
       [False, False, False, False,  True,  True],
       [False,  True,  True, False, False, False],
       [False, False, False, False, False, False],
       [False, False, False, False, False,  True]],

      [[False, False, False, False, False,  True],
       [False,  True,  True, False,  True, False],
       [ True, False,  True, False,  True,  True],
       [ True, False, False,  True, False, False],
       [False, False, False, False, False, False]],

      [[ True, False,  True, False,  True, False],
       [False, False,  True,  True, False, False],
       [ True,  True, False,  True,  True,  True],
       [False, False,  True, False,  True,  True],
       [False, False, False, False, False, False]],

      [[False, False, False,  True, False,  True],
       [False, False, False,  True, False, False],
       [False,  True,  True, False, False, False],
       [False, False, False, False, False, False],
       [False, False, False, False, False, False]]]]

test_and_bcast3v1d

Inputs:
  x: shape=(3, 4, 5), dtype=bool
    [[[False,  True,  True, False, False],
      [ True,  True, False,  True,  True],
      [ True, False,  True, False, False],
      [ True, False, False, False, False]],

     [[False, False, False, False,  True],
      [ True,  True, False,  True,  True],
      [False, False, False,  True, False],
      [ True, False, False,  True, False]],

     [[ True, False, False, False,  True],
      [False, False, False, False,  True],
      [ True, False, False,  True,  True],
      [False,  True, False, False, False]]]
  y: shape=(5,), dtype=bool
    [ True, False, False, False, False]

Outputs:
  and: shape=(3, 4, 5), dtype=bool
    [[[False, False, False, False, False],
      [ True, False, False, False, False],
      [ True, False, False, False, False],
      [ True, False, False, False, False]],

     [[False, False, False, False, False],
      [ True, False, False, False, False],
      [False, False, False, False, False],
      [ True, False, False, False, False]],

     [[ True, False, False, False, False],
      [False, False, False, False, False],
      [ True, False, False, False, False],
      [False, False, False, False, False]]]

test_and_bcast3v2d

Inputs:
  x: shape=(3, 4, 5), dtype=bool
    [[[ True,  True, False, False,  True],
      [False,  True, False,  True, False],
      [ True,  True, False,  True, False],
      [False,  True,  True, False,  True]],

     [[False,  True, False,  True,  True],
      [False, False,  True,  True,  True],
      [False, False, False, False, False],
      [ True,  True, False, False,  True]],

     [[False, False,  True,  True,  True],
      [False,  True,  True,  True,  True],
      [ True, False, False,  True, False],
      [False, False, False, False, False]]]
  y: shape=(4, 5), dtype=bool
    [[ True, False, False, False,  True],
     [ True,  True, False,  True,  True],
     [ True,  True,  True,  True,  True],
     [False,  True, False,  True,  True]]

Outputs:
  and: shape=(3, 4, 5), dtype=bool
    [[[ True, False, False, False,  True],
      [False,  True, False,  True, False],
      [ True,  True, False,  True, False],
      [False,  True, False, False,  True]],

     [[False, False, False, False,  True],
      [False, False, False,  True,  True],
      [False, False, False, False, False],
      [False,  True, False, False,  True]],

     [[False, False, False, False,  True],
      [False,  True, False,  True,  True],
      [ True, False, False,  True, False],
      [False, False, False, False, False]]]

test_and_bcast4v2d

Inputs:
  x: shape=(3, 4, 5, 6), dtype=bool
    [[[[False,  True,  True, False,  True,  True],
       [ True,  True, False,  True, False,  True],
       [False,  True, False,  True,  True,  True],
       [ True,  True, False, False, False, False],
       [False, False, False,  True,  True, False]],

      [[False,  True, False,  True,  True, False],
       [False,  True, False, False,  True, False],
       [False,  True, False, False, False, False],
       [False, False,  True,  True, False,  True],
       [False, False, False, False, False, False]],

      [[False,  True, False,  True, False, False],
       [ True, False, False, False,  True, False],
       [False, False, False, False, False, False],
       [False,  True, False, False, False, False],
       [ True, False,  True,  True, False,  True]],

      [[ True, False, False, False, False, False],
       [ True,  True,  True,  True,  True,  True],
       [False,  True, False, False,  True,  True],
       [ True,  True, False, False,  True,  True],
       [ True, False, False, False, False,  True]]],


     [[[ True,  True, False, False,  True, False],
       [False, False, False, False,  True,  True],
       [False,  True,  True,  True,  True, False],
       [False, False, False, False,  True,  True],
       [False,  True, False,  True,  True,  True]],

      [[False, False,  True,  True, False,  True],
       [ True, False,  True,  True, False,  True],
       [ True, False, False, False,  True,  True],
       [False,  True, False,  True, False, False],
       [ True,  True,  True,  True,  True, False]],

      [[False, False,  True, False, False, False],
       [False, False, False, False, False, False],
       [False,  True,  True,  True,  True,  True],
       [ True, False, False, False, False,  True],
       [ True, False,  True, False, False,  True]],

      [[False,  True,  True,  True,  True,  True],
       [False,  True,  True,  True, False,  True],
       [ True,  True, False, False,  True, False],
       [ True, False,  True,  True, False,  True],
       [False, False, False,  True, False, False]]],


     [[[False,  True, False,  True, False, False],
       [False,  True,  True, False,  True, False],
       [False,  True, False,  True,  True, False],
       [False,  True, False,  True,  True, False],
       [ True,  True,  True, False,  True, False]],

      [[ True, False, False,  True,  True, False],
       [False, False, False,  True,  True, False],
       [ True, False, False,  True, False,  True],
       [False, False,  True, False,  True,  True],
       [ True,  True, False, False,  True, False]],

      [[ True,  True, False, False,  True, False],
       [False,  True,  True,  True,  True,  True],
       [ True,  True,  True,  True,  True, False],
       [False, False,  True,  True,  True, False],
       [ True,  True,  True,  True, False, False]],

      [[False, False,  True,  True, False, False],
       [False, False, False,  True, False, False],
       [ True, False, False,  True, False, False],
       [False, False, False, False,  True,  True],
       [False,  True,  True,  True, False,  True]]]]
  y: shape=(5, 6), dtype=bool
    [[ True,  True,  True, False, False, False],
     [False,  True, False,  True, False, False],
     [False,  True, False, False,  True, False],
     [False, False,  True,  True, False, False],
     [ True,  True, False, False, False, False]]

Outputs:
  and: shape=(3, 4, 5, 6), dtype=bool
    [[[[False,  True,  True, False, False, False],
       [False,  True, False,  True, False, False],
       [False,  True, False, False,  True, False],
       [False, False, False, False, False, False],
       [False, False, False, False, False, False]],

      [[False,  True, False, False, False, False],
       [False,  True, False, False, False, False],
       [False,  True, False, False, False, False],
       [False, False,  True,  True, False, False],
       [False, False, False, False, False, False]],

      [[False,  True, False, False, False, False],
       [False, False, False, False, False, False],
       [False, False, False, False, False, False],
       [False, False, False, False, False, False],
       [ True, False, False, False, False, False]],

      [[ True, False, False, False, False, False],
       [False,  True, False,  True, False, False],
       [False,  True, False, False,  True, False],
       [False, False, False, False, False, False],
       [ True, False, False, False, False, False]]],


     [[[ True,  True, False, False, False, False],
       [False, False, False, False, False, False],
       [False,  True, False, False,  True, False],
       [False, False, False, False, False, False],
       [False,  True, False, False, False, False]],

      [[False, False,  True, False, False, False],
       [False, False, False,  True, False, False],
       [False, False, False, False,  True, False],
       [False, False, False,  True, False, False],
       [ True,  True, False, False, False, False]],

      [[False, False,  True, False, False, False],
       [False, False, False, False, False, False],
       [False,  True, False, False,  True, False],
       [False, False, False, False, False, False],
       [ True, False, False, False, False, False]],

      [[False,  True,  True, False, False, False],
       [False,  True, False,  True, False, False],
       [False,  True, False, False,  True, False],
       [False, False,  True,  True, False, False],
       [False, False, False, False, False, False]]],


     [[[False,  True, False, False, False, False],
       [False,  True, False, False, False, False],
       [False,  True, False, False,  True, False],
       [False, False, False,  True, False, False],
       [ True,  True, False, False, False, False]],

      [[ True, False, False, False, False, False],
       [False, False, False,  True, False, False],
       [False, False, False, False, False, False],
       [False, False,  True, False, False, False],
       [ True,  True, False, False, False, False]],

      [[ True,  True, False, False, False, False],
       [False,  True, False,  True, False, False],
       [False,  True, False, False,  True, False],
       [False, False,  True,  True, False, False],
       [ True,  True, False, False, False, False]],

      [[False, False,  True, False, False, False],
       [False, False, False,  True, False, False],
       [False, False, False, False, False, False],
       [False, False, False, False, False, False],
       [False,  True, False, False, False, False]]]]

test_and_bcast4v3d

Inputs:
  x: shape=(3, 4, 5, 6), dtype=bool
    [[[[ True,  True, False,  True, False,  True],
       [ True,  True,  True, False,  True, False],
       [False, False,  True, False, False,  True],
       [ True, False,  True, False, False,  True],
       [ True, False, False,  True,  True, False]],

      [[ True, False, False, False,  True,  True],
       [ True,  True,  True, False, False,  True],
       [ True, False,  True, False,  True, False],
       [ True, False, False,  True, False, False],
       [False,  True,  True,  True, False, False]],

      [[ True, False,  True,  True,  True, False],
       [False, False, False,  True,  True, False],
       [ True,  True,  True,  True, False, False],
       [ True, False, False, False,  True,  True],
       [False,  True, False, False,  True, False]],

      [[ True, False,  True, False,  True, False],
       [False,  True,  True,  True,  True, False],
       [ True,  True, False,  True,  True, False],
       [False,  True,  True,  True, False, False],
       [ True, False, False, False, False,  True]]],


     [[[ True, False, False,  True,  True, False],
       [ True,  True,  True,  True,  True,  True],
       [ True, False,  True,  True,  True,  True],
       [False, False, False,  True, False,  True],
       [ True, False,  True,  True,  True, False]],

      [[False, False,  True,  True,  True, False],
       [False,  True,  True,  True, False,  True],
       [ True, False, False,  True, False,  True],
       [False, False, False, False,  True,  True],
       [ True, False,  True, False, False,  True]],

      [[ True, False,  True, False,  True,  True],
       [ True, False, False, False, False,  True],
       [ True, False,  True,  True,  True, False],
       [ True, False, False, False, False, False],
       [False, False,  True,  True,  True,  True]],

      [[ True,  True,  True, False,  True,  True],
       [False, False,  True, False, False, False],
       [False, False, False,  True, False,  True],
       [False, False, False, False, False, False],
       [ True, False, False,  True,  True,  True]]],


     [[[ True, False, False,  True,  True, False],
       [ True,  True, False,  True, False,  True],
       [False,  True,  True, False,  True,  True],
       [False,  True, False, False, False,  True],
       [ True, False, False,  True,  True, False]],

      [[False, False,  True, False,  True,  True],
       [False, False,  True, False,  True,  True],
       [False,  True, False,  True, False, False],
       [False, False,  True, False,  True, False],
       [ True,  True,  True, False, False, False]],

      [[False,  True, False,  True,  True,  True],
       [ True,  True, False,  True,  True,  True],
       [ True,  True, False, False, False,  True],
       [False,  True, False, False,  True,  True],
       [ True, False, False,  True, False, False]],

      [[False,  True, False, False,  True,  True],
       [ True,  True,  True, False, False,  True],
       [ True,  True,  True, False,  True, False],
       [ True,  True, False, False, False,  True],
       [False,  True, False,  True,  True,  True]]]]
  y: shape=(4, 5, 6), dtype=bool
    [[[False,  True, False, False, False, False],
      [False,  True,  True, False,  True,  True],
      [False,  True,  True, False,  True,  True],
      [ True, False, False,  True, False, False],
      [ True, False,  True, False,  True,  True]],

     [[ True, False, False, False,  True, False],
      [False, False, False,  True, False,  True],
      [ True, False, False, False, False,  True],
      [False,  True,  True,  True, False,  True],
      [False,  True, False,  True, False,  True]],

     [[False,  True, False, False,  True, False],
      [ True,  True,  True, False,  True, False],
      [ True,  True, False,  True, False,  True],
      [False, False, False,  True, False, False],
      [ True, False,  True,  True, False,  True]],

     [[ True,  True, False,  True, False, False],
      [False, False,  True, False, False,  True],
      [ True, False, False, False, False,  True],
      [ True,  True, False,  True,  True, False],
      [False, False, False,  True,  True, False]]]

Outputs:
  and: shape=(3, 4, 5, 6), dtype=bool
    [[[[False,  True, False, False, False, False],
       [False,  True,  True, False,  True, False],
       [False, False,  True, False, False,  True],
       [ True, False, False, False, False, False],
       [ True, False, False, False,  True, False]],

      [[ True, False, False, False,  True, False],
       [False, False, False, False, False,  True],
       [ True, False, False, False, False, False],
       [False, False, False,  True, False, False],
       [False,  True, False,  True, False, False]],

      [[False, False, False, False,  True, False],
       [False, False, False, False,  True, False],
       [ True,  True, False,  True, False, False],
       [False, False, False, False, False, False],
       [False, False, False, False, False, False]],

      [[ True, False, False, False, False, False],
       [False, False,  True, False, False, False],
       [ True, False, False, False, False, False],
       [False,  True, False,  True, False, False],
       [False, False, False, False, False, False]]],


     [[[False, False, False, False, False, False],
       [False,  True,  True, False,  True,  True],
       [False, False,  True, False,  True,  True],
       [False, False, False,  True, False, False],
       [ True, False,  True, False,  True, False]],

      [[False, False, False, False,  True, False],
       [False, False, False,  True, False,  True],
       [ True, False, False, False, False,  True],
       [False, False, False, False, False,  True],
       [False, False, False, False, False,  True]],

      [[False, False, False, False,  True, False],
       [ True, False, False, False, False, False],
       [ True, False, False,  True, False, False],
       [False, False, False, False, False, False],
       [False, False,  True,  True, False,  True]],

      [[ True,  True, False, False, False, False],
       [False, False,  True, False, False, False],
       [False, False, False, False, False,  True],
       [False, False, False, False, False, False],
       [False, False, False,  True,  True, False]]],


     [[[False, False, False, False, False, False],
       [False,  True, False, False, False,  True],
       [False,  True,  True, False,  True,  True],
       [False, False, False, False, False, False],
       [ True, False, False, False,  True, False]],

      [[False, False, False, False,  True, False],
       [False, False, False, False, False,  True],
       [False, False, False, False, False, False],
       [False, False,  True, False, False, False],
       [False,  True, False, False, False, False]],

      [[False,  True, False, False,  True, False],
       [ True,  True, False, False,  True, False],
       [ True,  True, False, False, False,  True],
       [False, False, False, False, False, False],
       [ True, False, False,  True, False, False]],

      [[False,  True, False, False, False, False],
       [False, False,  True, False, False,  True],
       [ True, False, False, False, False, False],
       [ True,  True, False, False, False, False],
       [False, False, False,  True,  True, False]]]]

test_and_bcast4v4d

Inputs:
  x: shape=(1, 4, 1, 6), dtype=bool
    [[[[ True, False, False, False, False,  True]],

      [[ True,  True, False, False,  True, False]],

      [[False,  True,  True,  True, False, False]],

      [[False, False,  True,  True, False, False]]]]
  y: shape=(3, 1, 5, 6), dtype=bool
    [[[[False, False, False, False, False, False],
       [ True,  True,  True,  True, False,  True],
       [ True,  True,  True, False,  True,  True],
       [False,  True, False,  True, False, False],
       [ True, False,  True,  True,  True, False]]],


     [[[False, False, False,  True,  True, False],
       [ True, False,  True, False,  True,  True],
       [ True, False, False,  True, False,  True],
       [ True, False, False, False, False, False],
       [ True, False, False, False,  True,  True]]],


     [[[ True,  True,  True,  True,  True,  True],
       [False,  True, False,  True, False,  True],
       [ True,  True, False, False,  True,  True],
       [False, False,  True,  True,  True, False],
       [ True, False, False,  True, False,  True]]]]

Outputs:
  and: shape=(3, 4, 5, 6), dtype=bool
    [[[[False, False, False, False, False, False],
       [ True, False, False, False, False,  True],
       [ True, False, False, False, False,  True],
       [False, False, False, False, False, False],
       [ True, False, False, False, False, False]],

      [[False, False, False, False, False, False],
       [ True,  True, False, False, False, False],
       [ True,  True, False, False,  True, False],
       [False,  True, False, False, False, False],
       [ True, False, False, False,  True, False]],

      [[False, False, False, False, False, False],
       [False,  True,  True,  True, False, False],
       [False,  True,  True, False, False, False],
       [False,  True, False,  True, False, False],
       [False, False,  True,  True, False, False]],

      [[False, False, False, False, False, False],
       [False, False,  True,  True, False, False],
       [False, False,  True, False, False, False],
       [False, False, False,  True, False, False],
       [False, False,  True,  True, False, False]]],


     [[[False, False, False, False, False, False],
       [ True, False, False, False, False,  True],
       [ True, False, False, False, False,  True],
       [ True, False, False, False, False, False],
       [ True, False, False, False, False,  True]],

      [[False, False, False, False,  True, False],
       [ True, False, False, False,  True, False],
       [ True, False, False, False, False, False],
       [ True, False, False, False, False, False],
       [ True, False, False, False,  True, False]],

      [[False, False, False,  True, False, False],
       [False, False,  True, False, False, False],
       [False, False, False,  True, False, False],
       [False, False, False, False, False, False],
       [False, False, False, False, False, False]],

      [[False, False, False,  True, False, False],
       [False, False,  True, False, False, False],
       [False, False, False,  True, False, False],
       [False, False, False, False, False, False],
       [False, False, False, False, False, False]]],


     [[[ True, False, False, False, False,  True],
       [False, False, False, False, False,  True],
       [ True, False, False, False, False,  True],
       [False, False, False, False, False, False],
       [ True, False, False, False, False,  True]],

      [[ True,  True, False, False,  True, False],
       [False,  True, False, False, False, False],
       [ True,  True, False, False,  True, False],
       [False, False, False, False,  True, False],
       [ True, False, False, False, False, False]],

      [[False,  True,  True,  True, False, False],
       [False,  True, False,  True, False, False],
       [False,  True, False, False, False, False],
       [False, False,  True,  True, False, False],
       [False, False, False,  True, False, False]],

      [[False, False,  True,  True, False, False],
       [False, False, False,  True, False, False],
       [False, False, False, False, False, False],
       [False, False,  True,  True, False, False],
       [False, False, False,  True, False, False]]]]

test_cc_and

Inputs:
  x: shape=(2, 2), dtype=bool
    [[ True, False],
     [ True, False]]
  y: shape=(2, 2), dtype=bool
    [[ True,  True],
     [False, False]]

Outputs:
  z: shape=(2, 2), dtype=bool
    [[ True, False],
     [False, False]]

test_cc_and_bcast

Inputs:
  x: shape=(2, 2), dtype=bool
    [[ True, False],
     [ True, False]]
  y: shape=(), dtype=bool
    True

Outputs:
  z: shape=(2, 2), dtype=bool
    [[ True, False],
     [ True, False]]

Differences with previous version (1)#

SchemaDiff: And (domain 'ai.onnx')

  • old version: 1

  • new version: 7

  • breaking: no

Documentation:

  • line similarity: 0.40 (+1/-5 lines)

--- And v1
+++ And v7
@@ -1,7 +1,3 @@

 Returns the tensor resulted from performing the `And` logical operation
-elementwise on the input tensors `A` and `B`.
-
-If broadcasting is enabled, the right-hand-side argument will be broadcasted
-to match the shape of left-hand-side argument. See the doc of `Add` for a
-detailed description of the broadcasting rules.
+elementwise on the input tensors `A` and `B` (with Numpy-style broadcasting support).

Version History#