Finite transfer, direction (b): toward the Jordan domain #
Direction (b) starts with an extension of the target realization and reproduces it on the
source side. This module begins its construction with the target analogue of the common
subdivision from direction (a). The graph-theoretic extension assumptions are exactly
Schoenflies.IsSourceExtension, applied to P.tgt: only the side on which the realization lives
changes.
The trace of the target extension supported on the old target skeleton is 2-connected. Its
finitely many vertices are inserted by GeneratedPair.exists_subdivideTargetSetData; each target
point is transported backwards through the skeleton homeomorphism, and the resulting source
parameter is then carried forward by SubdivData.realizeHomeo. Thus the same subdivision is
made on both sides and both refinement maps share one parent map.
The reverse ear bookkeeping is also completed here. The ambient target path is injectively
renamed, realized as a target crosscut, and then matched to a polygonal source crosscut by
reversing EarHomeo. Off the wild curve, endpoint accessibility is derived from
polygonal-side accessibility. At a fresh anchor, this module constructs the compact carrier of
closed nonboundary edges and discharges compactness, cell absorption, and coverage before
applying Schoenflies.polyAccessible_of_stronglyAccessible_in. TargetBoundaryAnchored and
the compatibility of the evolving skeleton map now supply strong accessibility automatically.
Consequently the only remaining input is TargetEarFreshCombinatorics: the prescribed ear
order must say that a wild-boundary endpoint is absent from the current nonboundary carrier and
incident with one unique current source face.
Blueprint #
Schoenflies.IsTargetPartialTransferOf,Schoenflies.TargetCommonSubdivision— the target-to-source analogues of the direction-(a) transfer interfaces.Schoenflies.targetCommonSubdivision— step 1 ofthm:finite-transfer(b).Schoenflies.TargetEarStepData,Schoenflies.exists_targetSideEarStepData— the complete target-path relabelling and split data for one reverse ear.Schoenflies.TargetEarEndpointAccessibility,Schoenflies.targetEarStep_of_endpointAccessibility— the reverse ear construction reduced to its exact source-side geometric invariant.Schoenflies.GeneratedPair.sourceNonboundaryGraph,Schoenflies.GeneratedPair.source_polyAccessible_of_fresh— the compact source carrier and the fresh-anchor accessibility theorem with all cellulation hypotheses discharged.Schoenflies.TargetBoundaryAnchored,Schoenflies.TargetEarFreshCombinatorics,Schoenflies.targetEarFreshInvariant_of_boundaryAnchored— the fixed anchor geometry split cleanly from the remaining prescribed-ear combinatorics.Schoenflies.targetTransferOfEars,Schoenflies.finite_transfer_toward_source_of_freshInvariant— the relative-ear induction and direction-(b) theorem assuming only that combinatorial invariant.
An intermediate target-to-source transfer: the target realization occupies the current subgraph of the target extension, while both sides refine the original pair along one map.
The new source realization refines the original source realization.
The new target realization refines the original target realization along the same map.
- sourceSkeletonSet_subset : P.src.skeletonSet ⊆ T.src.skeletonSet
The evolving source skeleton contains the original source skeleton.
On the original source skeleton, the evolving skeleton map is still the original map.
The new target skeleton occupies exactly the current target subgraph.
Every current target-graph vertex is a 0-cell of the new pair.
Instances For
The evolving target skeleton contains the original target skeleton. This is transported from the corresponding source inclusion through the two compatible skeleton homeomorphisms.
A current abstract vertex lying over the original target skeleton has the original source preimage. This is the pointwise compatibility needed to recognize prescribed source anchors after any number of reverse-ear insertions.
The final conclusion of direction (b): a target extension reproduced by an admissible matched pair on both sides.
- refines_src : T.src.Refines P.src par
- refines_tgt : T.tgt.Refines P.tgt par
- homeo_eqOn : Set.EqOn T.homeo.toFun P.homeo.toFun P.src.skeletonSet
- vertexSet_subset : H.vertexSet ⊆ T.tgt.graph.vertexSet
- src_isAdmissible : T.src.IsAdmissible srcOuter srcDom
The transferred source realization is admissible.
- tgt_isAdmissible : T.tgt.IsAdmissible tgtOuter tgtDom
The transferred target realization is admissible.
Instances For
Step 1 of direction (b), as the interface consumed by its relative-ear induction.
Equations
- One or more equations did not get rendered due to their size.
Instances For
One target ear insertion, expressed as the step consumed by relative-ear induction.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Complete constructor data for adjoining one target ear to a partial reverse transfer.
The common abstract face split.
- srcPos : γ → Plane
The two realizations of its new ear.
Parametrizations of the matching source ear.
- tgtPos : γ → Plane
Positions of the target ear vertices.
Parametrizations of the target ear edges.
- srcCrosscut : self.splitData.EarCrosscut T.src self.srcPos self.srcDraw
Each realized ear is a crosscut of the corresponding old face.
- tgtCrosscut : self.splitData.EarCrosscut T.tgt self.tgtPos self.tgtDraw
The source-to-target matching consumed by
GeneratedPair.split.- srcEdgePolygonal ⦃e : γ⦄ : e ∈ self.splitData.ear.edgeSet → IsPolygonal (Graph.edgeArc self.srcDraw e)
Both realized ears have polygonal edges.
- tgtEdgePolygonal ⦃e : γ⦄ : e ∈ self.splitData.ear.edgeSet → IsPolygonal (Graph.edgeArc self.tgtDraw e)
The target ear realizes exactly the ambient target path.
- vertexSet_subset : (B.union (H.pathGraphOf a D)).vertexSet ⊆ (CellStructure.SplitData.realize T.tgt self.splitData self.tgtPos self.tgtDraw ⋯).graph.vertexSet
All vertices of the enlarged target graph occur in the split realization.
Instances For
Assemble the generated pair exposed by one reverse-ear construction.
Instances For
The assembled pair realizes the enlarged target subgraph and refines the original pair.
The nontrivial reverse-ear constructor, before the already-present-edge branch is folded back in.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Fold the explicit nontrivial reverse-ear constructor into the total TargetEarStep
interface.
Locating and realizing the target half of a reverse ear #
A nontrivial target ear lies in one current target face and determines its two abstract endpoint vertices.
No edge of a genuine target ear is contained in the outer curve. Such an edge would lie simultaneously in the old target skeleton and in the open current face.
Every edge of a genuine target ear is polygonal.
Every boundary endpoint of a nonouter ambient target edge comes from a strongly accessible source anchor. The stage construction will discharge this from the fresh-point list of its anchored square mesh.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The relative anchoring condition used by reverse ear insertion. Only genuinely new ambient edges need to end at prescribed strongly accessible anchors; edges already covering the original target skeleton are irrelevant to the next ear.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Anchoring every nonouter boundary edge implies the relative new-edge condition.
At a point of the distinguished boundary, there is at most one incident ambient edge not contained in that boundary. The ambient edge-name type is deliberately independent of the cell-name type.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The relative boundary-incidence condition actually used by reverse ear insertion. A new
nonouter ambient edge cannot meet, at the distinguished boundary, a nonouter edge already in
the current trace. Unlike NonouterIncidenceUniqueAtBoundary, this permits several old
nonouter edges at an old boundary vertex, which is essential for target-mesh overlays.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Global uniqueness implies the weaker relative no-new-incidence condition.
An edge of a plane graph whose whole carrier is already covered by a subgraph is itself an edge of that subgraph. An interior point of the arc cannot be a subgraph vertex, nor lie on a different subgraph edge, by the drawing intersection axioms.
In a plane drawing, an edge carrier cannot be contained in the carrier of a distinct edge.
Boundary anchoring is geometric, hence survives an injective change of the ambient edge names.
Uniqueness of the nonouter boundary edge is likewise invariant under injective edge relabelling.
The one-sided constructor data obtained by realizing the ambient target path.
Abstract split realizing the target ear.
- tgtPos : γ → Plane
Positions of the new target vertices.
Parametrizations of the new target edges.
- tgtCrosscut : self.splitData.EarCrosscut T.tgt self.tgtPos self.tgtDraw
- tgtEdgePolygonal ⦃e : γ⦄ : e ∈ self.splitData.ear.edgeSet → IsPolygonal (Graph.edgeArc self.tgtDraw e)
The two old abstract endpoints retain the orientation of the ambient target path.
- vertexSet_subset : (B.union (H.pathGraphOf a D)).vertexSet ⊆ (CellStructure.SplitData.realize T.tgt self.splitData self.tgtPos self.tgtDraw ⋯).graph.vertexSet
Instances For
Injectively rename a nontrivial ambient target ear with fresh abstract cells and realize it as a crosscut of the target face that contains its open arc.
The skeleton homeomorphism sends an abstract vertex on the source outer curve to the corresponding abstract vertex on the target outer curve.
The relative anchored-boundary condition supplies the strong-accessibility half of readiness at both outer endpoints of a nontrivial target ear. Compatibility of the evolving skeleton map with the original one identifies those endpoints with the original inverse images.
The exact geometric obligation on the source side #
An abstract skeleton vertex is outer-only when every current edge incident with it belongs to the distinguished outer graph.
Equations
- S.OuterOnlyAt v = ∀ {e : γ}, S.skel.Inc e v → e ∈ S.outerGraph.edgeSet
Instances For
At most two distinct outer edges are incident with the vertex. This is the exact local consequence of "the distinguished outer graph is a cycle" used by reverse transfer.
Equations
- S.OuterIncidenceAtMostTwo v = ∀ ⦃e f g : γ⦄, S.outerGraph.Inc e v → S.outerGraph.Inc f v → S.outerGraph.Inc g v → e = f ∨ e = g ∨ f = g
Instances For
The distinguished outer graph is locally at most two-branched at every vertex.
Equations
- S.OuterIncidenceAtMostTwoEverywhere = ∀ (v : γ), S.OuterIncidenceAtMostTwo v
Instances For
The edge set of the distinguished outer graph is exactly one simple cycle. Isolated vertices are intentionally irrelevant: reverse transfer only reads edge incidence.
Equations
- S.OuterEdgesFormCycle = ∃ (e : γ) (u : γ) (v : γ) (D : List γ), S.outerGraph.IsCycleThrough e u v D ∧ S.outerGraph.edgeSet = {f : γ | f ∈ e :: D}
Instances For
A graph whose outer edges form one simple cycle is locally at most two-branched. Rotate the cycle to one incident edge; every other edge at that endpoint lies on the complementary simple path, which has only one incident edge at either end.
Every abstract walk admits the orientation-aware edge substitution prescribed by a subdivision.
If the subdivided edge occurs in the input, both replacement edges occur in the output.
With the subdivided edge present, the output edge names are exactly the two replacements and the surviving input names.
Edge subdivision preserves the fact that the distinguished outer edges form one simple cycle. When the subdivided edge is outer, substitute it in the closed cycle walk and pull the resulting cycle down from the new skeleton to the new outer graph.
Splitting a face leaves the distinguished outer graph unchanged.
Every generated structure keeps one simple cycle as its distinguished outer edge set.
The local two-branch condition needed by square-mesh reverse transfer is therefore a generated-structure invariant as soon as the base outer edges form a simple cycle.
A vertex on a nonloop simple cycle has two distinct incident cycle edges. The face-cycle application obtains nonloopness from either geometric realization.
A nonouter edge of the evolving abstract skeleton incident at a current ambient vertex produces a nonouter edge of the ambient graph incident at the same geometric point. No edge labels need to agree: a sufficiently small vertex square meets only ambient edges incident at that vertex, while the open cell of the abstract edge accumulates at its endpoint.
If no new nonouter ambient edge can coexist at the boundary with a nonouter edge of the current trace, then both boundary endpoints of the next reverse ear are outer-only in the current abstract skeleton. Any current nonouter abstract edge would reflect to just such a current ambient edge.
Global uniqueness of the nonouter ambient edge is a convenient sufficient condition for the relative boundary-incidence hypothesis used above.
At an outer-only vertex with at most two outer branches, the selected incident face is the
only incident face. Each simple face boundary contributes two distinct edges at the vertex;
the two-branch bound forces two such face boundaries to share an outer edge, and
CombInvariants.outerEdge_unique then identifies their face names.
Source vertices incident with a nonboundary edge. Outer-only vertices are deliberately excluded: a fresh anchor must not enter the compact set merely because it is already a vertex of the outer cycle.
Equations
Instances For
The current source graph with outer edges and outer-only vertices removed. Its point set is the compact union of the closed nonboundary edges used in the fresh-anchor argument.
Equations
Instances For
An outer-only abstract vertex is absent from the compact nonboundary-edge carrier. The point-set statement includes the possible case where the vertex lies on the arc of an edge; the drawing axiom turns that case back into incidence with the same edge.
The source skeleton is the union of its compact nonboundary-edge carrier and its outer curve.
Inside the open Jordan domain, avoiding the compact nonboundary-edge carrier is equivalent to avoiding the whole current skeleton; the remaining part of the latter is the outer curve.
Every point of the open source domain outside the compact nonboundary-edge carrier lies in one current source face.
A fresh strongly accessible boundary anchor is accessible from its unique incident current source face. Compactness, absorption, and coverage are all discharged from the generated-pair invariants; the three hypotheses are exactly the data maintained by the prescribed ear order.
A point in the closure of a current source face is polygonally accessible whenever it is
off the wild outer curve. The polygonal graph used by polygonal_side_accessibility is the
current skeleton with its outer edges deleted; adjoining the compact outer curve recovers the
whole source skeleton.
The two ways a source endpoint is ready for a reverse ear: it is off the wild curve, or it is a fresh strongly accessible anchor incident with one prescribed current face.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The two genuinely evolving obligations at a wild-boundary endpoint: no nonboundary edge has reached it yet, and the next ear's face is its unique incident current source face.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The remaining prescribed-ear combinatorics after boundary anchoring has supplied strong accessibility: both outer endpoints are fresh and incident with the selected face alone.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The relative no-new-incidence boundary condition, together with the static two-branch invariant of generated outer graphs, supplies all reverse-ear fresh combinatorics.
Global uniqueness is a sufficient special case of the relative no-new-incidence condition.
The relative no-new-incidence condition and an outer cycle on the base structure supply the reverse-ear fresh combinatorics.
The preceding reverse-ear combinatorics follows from the natural base invariant that the distinguished outer edges form one simple cycle.
The combinatorial/anchoring invariant still required from the prescribed target ear order: both source endpoints selected by every nontrivial target ear are ready in the preceding sense.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Relative anchoring of new ambient boundary edges and the remaining fresh-incidence combinatorics together give the complete reverse-ear readiness invariant.
Anchoring every nonouter boundary edge is a sufficient special case of relative new-edge anchoring.
Both source endpoints of every nontrivial target ear are polygonally accessible from the
source face selected by that ear. This is the geometric invariant direction (b) must maintain:
off the wild curve it follows from polygonal-side accessibility, while a fresh wild-boundary
endpoint is supplied by polyAccessible_of_stronglyAccessible.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The fresh-anchor invariant implies the endpoint-accessibility invariant: the off-curve branch uses polygonal-side accessibility, and the fresh branch uses the compact carrier and unique-face theorem above.
Endpoint accessibility supplies the missing source crosscut, after which the already-proved arc matching and split constructor complete one nontrivial reverse ear.
One reverse ear follows from the endpoint-accessibility invariant.
One reverse ear follows from the concrete fresh-anchor/unique-face invariant.
Explicit output data for the target common-subdivision construction.
The part of
Hsupported on the old target skeleton.- pair : GeneratedPair S₀ srcOuter srcDom tgtOuter tgtDom
The matched pair after inserting every vertex of
graph. - parent : γ → γ
The composite parent map from the subdivided pair to
P. - graph_isTwoConnected : self.graph.IsTwoConnected
The traced graph remains 2-connected.
The traced graph is a subgraph of the given target extension.
- isTargetPartialTransferOf : IsTargetPartialTransferOf self.pair P self.graph Hdraw self.parent
The refined pair realizes the traced target graph.
Instances For
Construct the target trace, its matched subdivision, and the composite parent map.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Step 1 of finite transfer, direction (b): construct the target common subdivision.
Iterate a target ear step from a common subdivision through the whole extension graph.
Direction (b), assuming only the target ear step.
Direction (b), reduced to the precise geometric endpoint-accessibility invariant maintained by the prescribed outer-cycle ear order.
Direction (b), reduced to the prescribed ear order's concrete fresh-anchor and unique-incident-face invariant. All geometric accessibility and reverse-split construction is discharged.
Direction (b), with strong accessibility discharged by relative anchoring of new target boundary edges. The only remaining hypothesis is the fresh-carrier and unique-face combinatorics of the ear order.
Anchoring every nonouter target-boundary edge is a sufficient special case.
Finite transfer, direction (b), from relative ambient boundary geometry. Boundary endpoints must be anchored, and a genuinely new nonouter edge must not coexist there with a nonouter edge already in the current trace. The abstract base needs one distinguished outer cycle.
Finite transfer, direction (b), from name-independent ambient boundary geometry. Global uniqueness of the incident nonouter edge implies the relative condition used by reverse ear insertion.