def tile_loop
stelliferous@0.0.2.0 · proofs/kernel_packing_witness.bend:210
import stelliferous@0.0.2.0/proofs/kernel_packing_witness.bend as KernelPackingWitness
import Base
import stelliferous@0.0.2.0/traversal_loop.bend as Loop
import stelliferous@0.0.2.0/kernel_spatial_packing.bend as Packing
import stelliferous@0.0.2.0/proofs/kernel_packing_read_witness.bend as PackingReadWitness
210def tile_loop(+depth: Nat,count: Nat,-input: Array<F32>,-state: Packing.Tiled(),+input_evidence: PackingReadWitness.family(input),evidence: TileEvidence<input,depth,state>) ->
211 TileEvidence<input,depth,Loop.run(~Packing.Tiled(),~Packing.tile_step,count,state)>:
212 match count:
213 case 0n: evidence
214 case 1n+rest: tile_loop(depth,rest,input,Packing.tile_step(state),input_evidence,tile_step(depth,input,state,input_evidence,evidence))