Skip to main content

Module gadgets

Module gadgets 

Source
Expand description

Weighted triangular lattice gadgets with WeightedTri prefix.

This module contains gadget definitions for triangular lattice mapping. All gadgets use weighted mode (weight 2 for standard nodes).

Structs§

WeightedTriBranch
Weighted triangular branch gadget - matches Julia’s Branch gadget with weights.
WeightedTriBranchFix
Weighted triangular branch fix gadget.
WeightedTriBranchFixB
Weighted triangular branch fix B gadget.
WeightedTriCross
Weighted triangular cross gadget - matches Julia’s Cross gadget with weights.
WeightedTriEndTurn
Weighted triangular end turn gadget - matches Julia’s EndTurn gadget with weights.
WeightedTriTConDown
Weighted triangular T-connection down gadget.
WeightedTriTConLeft
Weighted triangular T-connection left gadget - matches Julia’s TCon gadget with weights.
WeightedTriTConUp
Weighted triangular T-connection up gadget.
WeightedTriTapeEntry
Tape entry recording a weighted triangular gadget application.
WeightedTriTrivialTurnLeft
Weighted triangular trivial turn left gadget.
WeightedTriTrivialTurnRight
Weighted triangular trivial turn right gadget.
WeightedTriTurn
Weighted triangular turn gadget - matches Julia’s TriTurn gadget.
WeightedTriWTurn
Weighted triangular W-turn gadget - matches Julia’s WTurn gadget with weights.

Enums§

SourceCell
Cell type for source matrix pattern matching.

Traits§

WeightedTriangularGadget
Trait for weighted triangular lattice gadgets.

Functions§

apply_crossing_gadgets
Apply all weighted triangular crossing gadgets to resolve crossings. Returns the tape of applied gadgets.
apply_simplifier_gadgets
Apply simplifier gadgets to the weighted triangular grid. This matches Julia’s apply_simplifier_gadgets! for TriangularWeighted mode.
tape_entry_mis_overhead
Get MIS overhead for a weighted triangular tape entry. For triangular mode, crossing gadgets use their native overhead, but simplifiers (DanglingLeg) use weighted overhead = unweighted * 2. Julia: mis_overhead(w::WeightedGadget) = mis_overhead(w.gadget) * 2