def sweep_geometry

stelliferous@0.0.2.0 · tensor_operations.bend:209

import stelliferous@0.0.2.0/tensor_operations.bend as TensorOperations
import Base
import stelliferous@0.0.2.0/tensor_access.bend as Access

209# The window geometry of a whole axis is exact and every sample address stays in U32.
210def sweep_geometry(+sweep: Access.Sweep) -> Bool:
211  Access.Sweep{+extent,+step,+kernel,+stride,+padding,+out_extent,+origin} = sweep
212  small(extent) && small(kernel) && small(stride) && small(padding) && U32.is_lt(0,kernel) && U32.is_lt(0,stride) && U32.is_lt(0,step) &&
213    U32.is_eq(origin,0) && U32.is_le(kernel,(extent + 2 * padding : U32)) &&
214    U32.is_eq(out_extent,((extent + 2 * padding - kernel : U32) / stride + 1 : U32))

Uses (12)

Used by (1)