OAI/AlgebraicGeometry/CharacterVarieties/Foundation/MatrixExpressions.lean
21 declarations, 0 contain sorry, 0 declared as axioms
- def
OAI.IntegralCharacterVarieties.MatrixExpression.blockIndexline 13Source documentation
Fixed coordinate identification for a rank sum. The choice is retained uniformly throughout the finite incidence presentation.
def blockIndex {k : ℕ} (d : Fin k → ℕ) : Fin (∑ j, d j) ≃ ((j : Fin k) × Fin (d j)) := … - def
OAI.IntegralCharacterVarieties.MatrixExpression.blockUnitline 17Source documentation
Direct-sum transport, with all summand indices retained.
def blockUnit {k : ℕ} (d : Fin k → ℕ) (g : (j : Fin k) → (Matrix (Fin (d j)) (Fin (d j)) R)ˣ) : (Matrix (Fin (∑ j, d j)) (Fin (∑ j, d j)) R)ˣ where … - def
OAI.IntegralCharacterVarieties.MatrixExpression.mapUnitline 39Source documentation
Ring change on an GL transport.
def mapUnit {S : Type*} [CommRing S] (φ : R →+* S) {n : ℕ} (g : (Matrix (Fin n) (Fin n) R)ˣ) : (Matrix (Fin n) (Fin n) S)ˣ := … - lemma
OAI.IntegralCharacterVarieties.MatrixExpression.mapUnit_valline 43 - inductive
OAI.IntegralCharacterVarieties.MatrixExpression.Termline 50Source documentation
Concrete words used at seams, corners, coarsened swaps, split vertices and surface relations. A block is an direct sum, not an abstract map between unnamed quotient modules. All inverses are the preserved GL inverse variables.
inductive Term : ℕ → Type _ | generator (e : E) : Term (rank e) | constant {n : ℕ} (g : (Matrix (Fin n) (Fin n) R)ˣ) : Term n | mul {n : ℕ} (x y : Term n) : Term n | inv {n : ℕ} (x : Term n) : Term n | block {k : ℕ} (d : Fin k → ℕ) (x : (j : Fin k) → Term (d j)) : Term (∑ j, d j) variable {R E rank} - def
OAI.IntegralCharacterVarieties.MatrixExpression.Term.evalline 59 - def
OAI.IntegralCharacterVarieties.MatrixExpression.Term.rawline 75Source documentation
The polynomial matrix expression, before imposing any inverses or incidence conditions. The sign retains both orientations of every transport.
def Term.raw : {n : ℕ} → Term R E rank n → Bool → Matrix (Fin n) (Fin n) (Polynomial R E (fun e => Fin (rank e))) | _, .generator e, b => variableMatrix R E (fun e => Fin (rank e)) e b | _, .constant h, b => (if b then (↑h⁻¹ : Matrix _ _ R) else (h : Matrix _ _ R)).map MvPolynomial.C | _, .mul x y, b => if b then y.raw b*x.raw b else x.raw b*y.raw b | _, .inv x, b => x.raw (!b) | _, .block d x, b => (Matrix.blockDiagonal' (fun j => (x j).raw b)).submatrix (blockIndex d) (blockIndex d)Mentions: OAI.IntegralCharacterVarieties.MatrixExpression.Term, OAI.IntegralCharacterVarieties.MatrixExpression.blockIndex
- def
OAI.IntegralCharacterVarieties.MatrixExpression.signedline 85 - theorem
OAI.IntegralCharacterVarieties.MatrixExpression.Term.raw_evaluationline 92Source documentation
Polynomial expression evaluation is exactly the corresponding composition, inversion and direct sum of local-system transports.
theorem Term.raw_evaluation {n : ℕ} (t : Term R E rank n) (g : (e : E) → (Matrix (Fin (rank e)) (Fin (rank e)) S)ˣ) (b : Bool) : (t.raw b).map (matrixEvaluation g).toRingHom=signed (t.eval (algebraMap R S) g) b := by …Mentions: OAI.IntegralCharacterVarieties.MatrixExpression.Term, OAI.IntegralCharacterVarieties.MatrixExpression.signed
- structure
OAI.IntegralCharacterVarieties.FlagCircuit.Dataline 119Source documentation
An incidence constraint compares transported flags with their named quotients. Constant grade zero imposes full equality (e.g. a surface relation). Coarsening the grade imposes the unchanged direct-sum block at an interchange.
structure Data where …
- abbrev
OAI.IntegralCharacterVarieties.FlagCircuit.Data.Entryline 128 - def
OAI.IntegralCharacterVarieties.FlagCircuit.Data.differenceline 130 - def
OAI.IntegralCharacterVarieties.FlagCircuit.Data.equationline 133 - abbrev
OAI.IntegralCharacterVarieties.FlagCircuit.Data.Coordinateline 136 - def
OAI.IntegralCharacterVarieties.FlagCircuit.Data.Holdsline 141Source documentation
Geometric meaning, including the grade identifications, not just ranks or underlying flag subspaces. It is meaningful over full integer rings as well.
def Holds (g : (e : E) → (Matrix (Fin (rank e)) (Fin (rank e)) S)ˣ) : Prop := …
- abbrev
OAI.IntegralCharacterVarieties.FlagCircuit.Data.Solutionline 146 - lemma
OAI.IntegralCharacterVarieties.FlagCircuit.Data.equation_evaluationline 149 - theorem
OAI.IntegralCharacterVarieties.FlagCircuit.Data.holds_iff_equationsline 167Source documentation
These are precisely the finite polynomial equations for all identified-flag constraints. No event or wrap relation is omitted.
theorem holds_iff_equations (g : (e : E) → (Matrix (Fin (rank e)) (Fin (rank e)) S)ˣ) : D.Holds g ↔ ∀ z, matrixEvaluation g (D.equation z)=0 := by … - def
OAI.IntegralCharacterVarieties.FlagCircuit.Data.pointsEquivline 180Source documentation
The finite algebra representing the split-frame incidence scheme. This is not an abstract affine-bundle interface: all entries and all relations are in the explicit quotient algebra, and its ring-valued points are identified.
def pointsEquiv : D.Solution S ≃ (D.Coordinate →ₐ[R] S) := …
- instance
OAI.IntegralCharacterVarieties.FlagCircuit.Data.finiteTypeline 184 - instance
OAI.IntegralCharacterVarieties.FlagCircuit.Data.finiteEntryline 185