Skip to main content

Mojo function

sub

sub(lhs: Symbol, rhs: Symbol, location: Optional[_SourceLocation] = Optional(#kgen.none)) -> Symbol

Computes the elementwise subtraction of two symbolic tensors.

Creates a new op node to compute the subtraction of two symbol tensor values and adds it to the graph, returning the symbolic result.

  • If lhs and rhs have different dtypes, they will be promoted according to the dtype promotion rules before the operation.
  • If lhs and rhs have different shapes, they will be broadcast to the same shape according to broadcasting rules before the operation.

Args:

  • lhs (Symbol): The symbol to use as left side of the subtraction.
  • rhs (Symbol): The symbol to use as right side of the subtraction.
  • location (Optional[_SourceLocation]): An optional location for a more specific error message.

Returns:

A symbolic tensor value representing the output of the subtraction. The result will have: - the same dtype as the type-promotion of the two input dtypes - the same shape as the broadcast of the two input shapes.

Raises:

  • If the input values' shapes are not compatible for broadcasting. See _elementwise_broadcast() for more. - If one of the input values has an unsupported dtype. - If the two symbols are parts of different graphs.