FAILURE MAP
← Case archive

FA-88694 / Mesh topology invariants / Member archive

Kill-edge-make-ring removes a loop instead of adding one · case 04

Creating an inner ring breaks the Euler-Poincare relation.

Member previewVariant 4 · 3 implementations · 7 checks per implementation

Case contract

Input: list of Euler operator names applied to counts [V,E,F,L,S,G] starting at zero. Deltas: mvfs(+V,+F,+L,+S), mev(+V,+E), mef(+E,+F,+L), kemr(-E,+L), mekr(+E,-L), kfmrh(-F,+G) and their inverses kvfs, kev, kef, mfkrh. After each op: an unknown name returns ["unknown", i]; a negative count or fewer loops than faces returns ["invalid", i]; a violated Euler-Poincare relation V-E+F-(L-F)=2(S-G) returns ["broken-invariant", i]. Return the final counts.

Why this case matters

Mesh processing pipelines (remeshing, export, simulation, printing) trust these topological counts and adjacency answers; a wrong invariant silently accepts broken meshes or rejects valid ones.

One recorded failure

Sample boundary fixture

This sample comes from the broken implementation of a controlled reproducer.

Boundary fixtureActualExpectedOutcome
ring then remake edge["invalid", 5][4, 4, 2, 2, 1, 0]Failed

MEMBER ARCHIVE

The complete case is available to members.

This record includes three runnable implementations, regression fixtures, execution results, and source hashes.

Member access is invitation-based. Sign in with your invited account to inspect the sources.

Sign in to the archive ↗