Skip to content

SemanticCompute v1.11.0

Choose a tag to compare

@entertrainment entertrainment released this 31 Aug 09:07
· 1 commit to main since this release

SemanticCompute v1.11.0 — the convolution-inference lane

A minor, by the rule: four additive families (catalogue 144 → 148) plus new public API. This is the release
that lets a ported nnU-Net / nnDetection trunk run locally through verified kernels — the geometry ops shipped
in v1.7.0; this adds the trunk.

Added

Conv3D — multi-channel dense 3D convolution in PyTorch semantics exactly: channels-first
[Cout][Cin][kD][kH][kW] weights so checkpoint tensors drop in without a transpose pass, CROSS-CORRELATION
(the kernel is not flipped — pinned with an asymmetric delta, because a flipped implementation passes every
symmetric test ever written), zero padding, floor-division extents, per-output-channel bias.

Transposed Conv3D — ConvTranspose semantics including outputPadding, which resolves the stride-ambiguity
in the output extent; dropping it shifts every skip-connection concat by a voxel in a network that still runs.
Weights [Cin][Cout][k…] — Cin FIRST, PyTorch's own asymmetry, kept because "normalising" it is how a ported
decoder produces plausible garbage. Gather form: the textbook scatter's arithmetic with no atomics.

The load-bearing test is the adjoint identity ⟨conv(x), y⟩ = ⟨x, convᵀ(y)⟩ on a non-square, strided,
padded, multi-channel configuration — it holds trivially on symmetric cases and only exercises the conventions
on awkward ones. It caught its own author twice before shipping: a "helpful" weight permutation (ConvTranspose's
[in][out] IS conv's [out][in]; the same bytes serve both) and a test vector whose claimed variance was wrong.

Instance norm 3D — the nnU-Net normaliser: per-channel spatial statistics, eps inside the sqrt and
biased variance, both pinned by arithmetic chosen so no tolerance can blur which convention is implemented
(σ² = 3, ε = 1 separates the eps conventions by 37%). A constant channel yields β, finite.

LeakyReLU — slope as a real parameter (0 = ReLU, 1 = identity, both asserted). Exact GPU parity,
truthfully: no accumulation, a compare and a multiply round identically.

Measured parity contracts for BoxIoU3D and ROIAlign3D — retrofitted at an adopter's request; both
v1.7.0 families predate SLParityContract. The bars are measured, not reasoned: IoU came back bit-exact over
90,000 pairs
(stated default-float anyway — FMA contraction is compiler-discretionary); ROI-Align measured
9.5×10⁻⁷ absolute / 256 ULP at samplingRatio 2 — two orders of magnitude past "≤1 ULP, it's just FMA",
which is why the rationale warns against a ULP-tier bar. Shape tells you the failure mode; only measurement
tells you the magnitude.

sc_list_families gains match: "wholeToken" — exact token equality alongside the default prefix
matching, for negative claims, where a prefix hit is a false verdict: a consumer's doc checker asked "is there
an LU family?" and got seven prefix hits (Lucas-Kanade, Lucy, luminance, lut) as evidence against a true
claim. Whole-token takes LU 7 → 1, and the 1 is the genuine falsifier. Tokens are maximal alphanumeric runs,
deliberately not hump-split — camelCase splitting manufactured a phantom "LU" from Leaky·Re·LU in the first
draft. Unknown match modes refuse.

Upgrade note

A running MCP server keeps the binary it started with: publish, reinstall, restart the client. sc_version's
buildCommit is the proof of what you are talking to.

Verification

1116 tests across 242 suites, green. Compile sweep: 344 programs across 203 lowerings, 0 failed.

Assets

macOS binaries are universal (arm64 + x86_64), Developer-ID signed and notarised. Linux binaries are provided
for x86_64 and arm64, statically linked. Verify any download against SHA256SUMS.txt.