def plan_elements

bendtorch-core@0.1.0.0 · src/tensor/permute_build_proof.bend:322

import bendtorch-core@0.1.0.0/src/tensor/permute_build_proof.bend as PermuteBuildProof
import Base
import bendtorch-core@0.1.0.0/src/shape/core.bend as Shape
import bendtorch-core@0.1.0.0/src/tensor/layout.bend as Layout
import bendtorch-core@0.1.0.0/src/tensor/lifecycle.bend as Lifecycle

322def plan_elements(+input: Shape.Shape, +axes: List<&2, U32>, +plan: Layout.Plan<input, axes>) ->
323  {Shape.elements(Layout.output(input, axes, plan)) == Shape.elements(input) : Nat}:
324  Layout.Permutation{+output, valid, ordered, +count} = plan
325  Equal.sym(Nat, Shape.elements(input), Shape.elements(output), Lifecycle.natural_equal(Shape.elements(input), Shape.elements(output), count))

Uses (9)

Used by (2)