Four disjoint offset spokes #
A rotational choice of one of the paired ports on each side gives four proper orthogonal spokes from the center of the square. Distinct spokes meet only at that center. These are finite certificates about entire real route supports.
Main definitions #
Cslib.Orthogonal.PairedPorts.spokeLane,.spokeRoute: selected ports and two-segment spokes.
Main results #
Cslib.Orthogonal.PairedPorts.spoke_isSimple,.spokes_contact: simplicity and center-only contacts.
References #
The finite offset star is original.
One selected lane on each side, in rotational order around the center.
Instances For
A spoke first travels toward its bend and then toward its selected boundary point.
Instances For
A two-segment route from the center to the selected side port.
Instances For
theorem Cslib.Orthogonal.PairedPorts.spoke_endpoints (s : Fin 4) :
IsOrthogonal (spokeRoute s) ∧ List.head? (spokeRoute s) = some (120, 120) ∧ List.getLast? (spokeRoute s) = some (boundaryPort s (spokeLane s))
Every spoke is proper and orthogonal with its prescribed endpoints.
theorem Cslib.Orthogonal.PairedPorts.spoke_bend_check (s : Fin 4) :
segmentContactCheck [spokeElbow s] (120, 120) (spokeElbow s) (spokeElbow s) (boundaryPort s (spokeLane s)) = true
The two segments of a spoke meet only at their shared bend.
Each spoke is simple over its full real support.
theorem Cslib.Orthogonal.PairedPorts.spokes_contact_check (s t : Fin 4) :
s ≠ t → routeContactCheck [(120, 120)] (spokeRoute s) (spokeRoute t) = true
Distinct spokes have only the center as an allowed continuous contact.