The pentachoron formula (formulas/pentachoron.txt) becomes a native rule: pentachoron_cfg in the rule library
(registry entry "pentachoron", noise space, knob k) and the node CFG Mix: Pentachoron (k, scale, space; default
k 1, noise space), a "rule" mix spec like the Scale and Direction nodes. The arithmetic is the formula's, operation
for operation, computed in float64 whatever the input: in the noise and velocity spaces (float64 already) the node
equals the formula bit for bit; on the denoised image the float64 keeps the large-k limit exact (in float32 the
numerator exp(z - m) - exp(-z - m) cancels: 8e-3 of the push at k = 1e6).
Checks:
- tests: 53 pass on CPU. The rule against a written-out reference (sinh / cosh themselves, 4 channels) to 1e-10;
16 channels finite; the 4 tau bound; k = 1e6 gives plain CFG in every space; 6 channels refused; the node against
the formula bit for bit in the noise and velocity spaces on SDXL-like and Anima-like batches, to float32 rounding
on the denoised image.
- In ComfyUI on the GPU: the node's images equal the formula's pixel for pixel on SDXL and Anima (smoke size), and
the 1024 x 1024, 50-step showcase renders equal the published ones on both models; k = 1e6 matches plain CFG
as the formula did (SDXL identical, Anima the same 0.239-level rounding).
- The showcase entries re-rendered with the node (docs/showcase graphs now use CFGP_MixPentachoron); a stage
node's caption names the part after its colon (Pentachoron, not CFG Mix).
- New example workflow: CFG Megapack - pentachoron AB.
- Example workflows: the widgets_values_named mirrors (restored by the frontend's experimental "Restore widget
values by name" setting) had gone stale in four files (the Anima example carried SDXL prompts and settings);
rebuilt from the positional values.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>