Documentation

GQ2.LocalLiftingDuality

Prop 5.16 (local lifting duality) from B6 + B7 #

The paper's local lifting duality prop_5_16 (§5.16) is the local Tate duality bundle B6 (GQ2.tateDuality) plus the local Euler characteristic B7 (GQ2.Foundations.absGalQ2_localEulerCharacteristic), re-expressed against the 𝔽₂-valued ElemDual/dualEval cup framework (the Tate-duality interface) used in §5.

The bridge is the n = 2 transport MuN 2 ≅ ZMod 2 (the second roots of unity are {±1} ⊂ ℚ₂, so G_ℚ₂ acts trivially); it carries MuDual 2 A ≅ ElemDual A and muDualPairing ≅ dualEval. The numeric clauses then follow from B6's card_H*_dual + B7 Euler-characteristic counting, and the cup-bijectivity clauses from B6's perfect* plus the opposite-currying-by-counting argument.

The n = 2 transport MuN 2 ≅ ZMod 2 (trivial G-module). #

theorem GQ2.LocalLiftingDuality.card_muN_two :
Nat.card (MuN 2) = 2

#μ₂ = 2.

noncomputable def GQ2.LocalLiftingDuality.muNTwoEquiv :
MuN 2 ≃+ ZMod 2

An abstract additive isomorphism MuN 2 ≃+ ZMod 2 (order-2 group).

Equations
Instances For
    theorem GQ2.LocalLiftingDuality.smul_muN_two_trivial (g : AbsGalQ2) (x : MuN 2) :
    g x = x

    G_ℚ₂ acts trivially on μ₂: the second roots of unity are {±1} ⊆ ℚ₂, fixed by every ℚ₂-algebra automorphism.

    Counting: #(V →+ 𝔽₂) = #V for a finite 𝔽₂-vector space. #

    theorem GQ2.LocalLiftingDuality.card_addHom_zmod2 {V : Type u_1} [AddCommGroup V] [Finite V] (hV₂ : ∀ (v : V), v + v = 0) :
    Nat.card (V →+ ZMod 2) = Nat.card V

    For a finite 2-torsion abelian group V (a finite 𝔽₂-vector space), the 𝔽₂-dual has the same cardinality: #(V →+ ZMod 2) = #V. (Additive homs to 𝔽₂ are 𝔽₂-linear, and a finite-dimensional space is isomorphic to its dual.)

    theorem GQ2.LocalLiftingDuality.exists_addHom_ne_zero {V : Type u_1} [AddCommGroup V] [Finite V] (hV₂ : ∀ (v : V), v + v = 0) {v : V} (hv : v 0) :
    ∃ (f : V →+ ZMod 2), f v 0

    Separation of points by 𝔽₂-functionals: a nonzero vector in a finite 𝔽₂-vector space is detected by some additive functional to 𝔽₂. (Extend the singleton to a basis; the corresponding coordinate functional is nonzero on it.)

    theorem GQ2.LocalLiftingDuality.H1_two_torsion_gen {M : Type u_1} [AddCommGroup M] [TopologicalSpace M] [DiscreteTopology M] [DistribMulAction AbsGalQ2 M] [ContinuousSMul AbsGalQ2 M] (hM₂ : ∀ (m : M), m + m = 0) (z : ContCoh.H1 AbsGalQ2 M) :
    z + z = 0

    Two-torsion of for a 2-torsion coefficient module.

    theorem GQ2.LocalLiftingDuality.H2_two_torsion_gen {M : Type u_1} [AddCommGroup M] [TopologicalSpace M] [DiscreteTopology M] [DistribMulAction AbsGalQ2 M] [ContinuousSMul AbsGalQ2 M] (hM₂ : ∀ (m : M), m + m = 0) (z : ContCoh.H2 AbsGalQ2 M) :
    z + z = 0

    Two-torsion of for a 2-torsion coefficient module.

    theorem GQ2.LocalLiftingDuality.bijective_cup {V : Type u_1} {W : Type u_2} {H : Type u_3} [AddCommGroup V] [AddCommGroup W] [AddCommGroup H] [Finite V] [Finite W] [Finite H] (hV₂ : ∀ (v : V), v + v = 0) (hW₂ : ∀ (w : W), w + w = 0) (hcardVW : Nat.card V = Nat.card W) (τ : H ≃+ ZMod 2) (Φ : V →+ W →+ H) (hsurj : ∀ (f : V →+ ZMod 2), ∃ (w : W), ∀ (c : V), τ ((Φ c) w) = f c) :
    Function.Bijective Φ

    Opposite currying by counting (B6's flagged deviation, discharged via B7 finiteness): for a biadditive cup map Φ : V →+ W →+ H with H ≃+ 𝔽₂, if #V = #W (both finite 2-torsion) and the τ-twisted opposite currying f ↦ (∃ w, ∀ c, τ(Φ c w) = f c) is surjective onto V →+ 𝔽₂, then Φ is a perfect pairing: c ↦ Φ c is bijective onto W →+ H.

    Degree-0 transport #H⁰(MuDual 2 A) = #fixedPts C (ElemDual A). #

    The μ₂-dual and the 𝔽₂-dual agree through muNTwoEquiv, and the G_ℚ₂-conjugation action on MuDual 2 A matches the C-contragredient action on ElemDual A through ρ (hcomp + trivial action on μ₂/𝔽₂). So the invariants correspond.

    noncomputable def GQ2.LocalLiftingDuality.dualMap {A : Type} [AddCommGroup A] (φ : MuDual 2 A) :

    Post-composition with muNTwoEquiv sends the μ₂-dual to the 𝔽₂-dual.

    Equations
    Instances For
      @[simp]
      theorem GQ2.LocalLiftingDuality.dualMap_apply {A : Type} [AddCommGroup A] (φ : MuDual 2 A) (a : A) :
      (dualMap φ) a = muNTwoEquiv (φ a)
      noncomputable def GQ2.LocalLiftingDuality.dualMapInv {A : Type} [AddCommGroup A] (lam : FoxH.ElemDual A) :
      MuDual 2 A

      Inverse direction.

      Equations
      Instances For
        noncomputable def GQ2.LocalLiftingDuality.dualAddEquiv {A : Type} [AddCommGroup A] :

        The μ₂-dual and the 𝔽₂-dual are additively isomorphic (post-composition with muNTwoEquiv). Not G-equivariant on its own, but a bijection — enough for cardinalities.

        Equations
        Instances For
          theorem GQ2.LocalLiftingDuality.muDual_inv_pointwise {C : Type u_1} [Group C] [TopologicalSpace C] {ρ : AbsGalQ2 →ₜ* C} ( : Function.Surjective ρ) {A : Type} [AddCommGroup A] [DistribMulAction C A] [DistribMulAction AbsGalQ2 A] (hcomp : ∀ (γ : AbsGalQ2) (a : A), γ a = ρ γ a) {φ : MuDual 2 A} ( : ∀ (γ : AbsGalQ2), γ φ = φ) (c : C) (a : A) :
          φ (c a) = φ a

          The G_ℚ₂-invariance of φ (a μ₂-dual) rewritten pointwise, then transported to C-orbits via ρ: φ (c • a) = φ a for every c : C.

          theorem GQ2.LocalLiftingDuality.elemDual_fixed_pointwise {C : Type u_1} [Group C] {A : Type} [AddCommGroup A] [DistribMulAction C A] {lam : FoxH.ElemDual A} (hlam : ∀ (c : C), c lam = lam) (c : C) (a : A) :
          lam (c a) = lam a

          The C-invariance of a 𝔽₂-dual lam, rewritten pointwise: lam (c • a) = lam a.

          theorem GQ2.LocalLiftingDuality.card_H0_muDual_eq_fixedPts {C : Type u_1} [Group C] [TopologicalSpace C] {ρ : AbsGalQ2 →ₜ* C} ( : Function.Surjective ρ) {A : Type} [AddCommGroup A] [DistribMulAction C A] [DistribMulAction AbsGalQ2 A] (hcomp : ∀ (γ : AbsGalQ2) (a : A), γ a = ρ γ a) :
          Nat.card (ContCoh.H0 AbsGalQ2 (MuDual 2 A)) = Nat.card (FoxH.fixedPts C (FoxH.ElemDual A))

          Degree-0 transport: the G_ℚ₂-invariants of the μ₂-dual biject with the C-invariants of the 𝔽₂-dual (via post-composition with muNTwoEquiv).

          theorem GQ2.LocalLiftingDuality.H2_two_torsion {A : Type} [AddCommGroup A] [TopologicalSpace A] [DiscreteTopology A] [DistribMulAction AbsGalQ2 A] [ContinuousSMul AbsGalQ2 A] (hA₂ : ∀ (a : A), a + a = 0) (z : ContCoh.H2 AbsGalQ2 A) :
          z + z = 0

          H²(A) is 2-torsion when A is (it is a subquotient of 𝔽₂-valued cochains).

          theorem GQ2.LocalLiftingDuality.card_H2_eq_fixedPts {C : Type u_1} [Group C] [TopologicalSpace C] {ρ : AbsGalQ2 →ₜ* C} ( : Function.Surjective ρ) {A : Type} [AddCommGroup A] [TopologicalSpace A] [DiscreteTopology A] [Finite A] [DistribMulAction C A] [DistribMulAction AbsGalQ2 A] [ContinuousSMul AbsGalQ2 A] (hcomp : ∀ (γ : AbsGalQ2) (a : A), γ a = ρ γ a) (hA₂ : ∀ (a : A), a + a = 0) :
          Nat.card (ContCoh.H2 AbsGalQ2 A) = Nat.card (FoxH.fixedPts C (FoxH.ElemDual A))

          Clause (i): #H²(A) = #fixedPts C (ElemDual A) — B6's (0,2) duality (H⁰(A′) ≅ Hom(H²(A), 𝔽₂)), the self-dual count #Hom(H²(A),𝔽₂) = #H²(A), and the degree-0 transport.

          Structural cardinalities for clause (ii). #

          theorem GQ2.LocalLiftingDuality.dZero_ker_eq_H0 {A : Type} [AddCommGroup A] [DistribMulAction AbsGalQ2 A] :

          ker(d⁰) = H⁰.

          theorem GQ2.LocalLiftingDuality.card_A_eq_B1_mul_H0 {A : Type} [AddCommGroup A] [DistribMulAction AbsGalQ2 A] :
          Nat.card A = Nat.card (ContCoh.B1 AbsGalQ2 A) * Nat.card (ContCoh.H0 AbsGalQ2 A)

          #A = #B¹ · #H⁰ (first isomorphism theorem for d⁰: B¹ = im d⁰ ≅ A/ker d⁰ = A/H⁰).

          theorem GQ2.LocalLiftingDuality.card_Z1_eq_H1_mul_B1 {A : Type} [AddCommGroup A] [TopologicalSpace A] [DiscreteTopology A] [DistribMulAction AbsGalQ2 A] [ContinuousSMul AbsGalQ2 A] :
          Nat.card (ContCoh.Z1 AbsGalQ2 A) = Nat.card (ContCoh.H1 AbsGalQ2 A) * Nat.card (ContCoh.B1 AbsGalQ2 A)

          #Z¹ = #H¹ · #B¹ (Lagrange on H¹ = Z¹/B¹).

          theorem GQ2.LocalLiftingDuality.pow_padicValNat_card {A : Type} [AddCommGroup A] [Finite A] (hA₂ : ∀ (a : A), a + a = 0) :
          2 ^ padicValNat 2 (Nat.card A) = Nat.card A

          2 ^ v₂(#A) = #A for finite 2-torsion A (a finite 𝔽₂-vector space).

          theorem GQ2.LocalLiftingDuality.card_Z1_eq {C : Type u_1} [Group C] [TopologicalSpace C] {ρ : AbsGalQ2 →ₜ* C} ( : Function.Surjective ρ) {A : Type} [AddCommGroup A] [TopologicalSpace A] [DiscreteTopology A] [Finite A] [DistribMulAction C A] [DistribMulAction AbsGalQ2 A] [ContinuousSMul AbsGalQ2 A] (hcomp : ∀ (γ : AbsGalQ2) (a : A), γ a = ρ γ a) (hA₂ : ∀ (a : A), a + a = 0) :
          Nat.card (ContCoh.Z1 AbsGalQ2 A) = Nat.card A ^ 2 * Nat.card (FoxH.fixedPts C (FoxH.ElemDual A))

          Clause (ii): #Z¹(A) = #A² · #fixedPts C (ElemDual A) — from #Z¹ = #H¹·#B¹, the B7 Euler characteristic #H¹ = #H⁰·#H²·#A, #A = #B¹·#H⁰, and clause (i).

          Clause (iii): #H²(𝔽₂) = 2. #

          theorem GQ2.LocalLiftingDuality.card_H2_zmod2_eq_two [TopologicalSpace (ZMod 2)] [DiscreteTopology (ZMod 2)] [DistribMulAction AbsGalQ2 (ZMod 2)] [ContinuousSMul AbsGalQ2 (ZMod 2)] (htriv : ∀ (γ : AbsGalQ2) (m : ZMod 2), γ m = m) :
          Nat.card (ContCoh.H2 AbsGalQ2 (ZMod 2)) = 2

          Clause (iii): #H²(G_ℚ₂, 𝔽₂) = 2. With G_ℚ₂ acting trivially the μ₂-dual invariants are everything, so #H⁰(MuDual 2 𝔽₂) = #(𝔽₂ →+ μ₂) = #(𝔽₂ →+ 𝔽₂) = 2; B6's (0,2) duality then pins #H²(𝔽₂).

          Cup clauses (iv)–(vi): perfectness of the evaluation cup pairings. #

          B6's perfect02/11/20 pair with the μ₂-dual MuDual 2 A in the left slot; the paper's prop_5_16 puts A (resp. ElemDual A) in the left slot — the transpose. The bridge is graded-commutativity (GQ2.ContCoh.cup11_comm, char 2 so the sign is +1) plus the G-equivariant coefficient transport dualAddEquiv : MuDual 2 A ≃+ ElemDual A (from hpair), carried across //H⁰ by H1congr/H2congr/H0congr and across the μ₂/𝔽₂ target by muNTwoEquiv. Perfectness of the transpose then follows by the opposite-currying count bijective_cup (B7 supplies the finiteness).

          theorem GQ2.LocalLiftingDuality.muNTwoEquiv_equivariant [DistribMulAction AbsGalQ2 (ZMod 2)] (htriv : ∀ (γ : AbsGalQ2) (m : ZMod 2), γ m = m) (g : AbsGalQ2) (m : MuN 2) :
          muNTwoEquiv (g m) = g muNTwoEquiv m

          muNTwoEquiv : μ₂ ≃+ 𝔽₂ is G-equivariant (both actions are trivial).

          theorem GQ2.LocalLiftingDuality.edEquivariant {A : Type} [AddCommGroup A] [DistribMulAction AbsGalQ2 A] [DistribMulAction AbsGalQ2 (FoxH.ElemDual A)] [DistribMulAction AbsGalQ2 (ZMod 2)] (hpair : ∀ (γ : AbsGalQ2) (a : A) (lam : FoxH.ElemDual A), ((FoxH.dualEval A) (γ a)) (γ lam) = γ ((FoxH.dualEval A) a) lam) (htriv : ∀ (γ : AbsGalQ2) (m : ZMod 2), γ m = m) (g : AbsGalQ2) (φ : MuDual 2 A) :
          dualAddEquiv (g φ) = g dualAddEquiv φ

          dualAddEquiv : MuDual 2 A ≃+ ElemDual A is G-equivariant: the conjugation action on the μ₂-dual matches the contragredient action on the 𝔽₂-dual, which hpair pins down.

          theorem GQ2.LocalLiftingDuality.bijective_cup11_dualEval {A : Type} [AddCommGroup A] [TopologicalSpace A] [DiscreteTopology A] [Finite A] [DistribMulAction AbsGalQ2 A] [ContinuousSMul AbsGalQ2 A] [TopologicalSpace (FoxH.ElemDual A)] [DiscreteTopology (FoxH.ElemDual A)] [DistribMulAction AbsGalQ2 (FoxH.ElemDual A)] [ContinuousSMul AbsGalQ2 (FoxH.ElemDual A)] [TopologicalSpace (ZMod 2)] [DiscreteTopology (ZMod 2)] [DistribMulAction AbsGalQ2 (ZMod 2)] [ContinuousSMul AbsGalQ2 (ZMod 2)] (hA₂ : ∀ (a : A), a + a = 0) (htriv : ∀ (γ : AbsGalQ2) (m : ZMod 2), γ m = m) (hpair : ∀ (γ : AbsGalQ2) (a : A) (lam : FoxH.ElemDual A), ((FoxH.dualEval A) (γ a)) (γ lam) = γ ((FoxH.dualEval A) a) lam) :
          Function.Bijective fun (c : ContCoh.H1 AbsGalQ2 A) => (ContCoh.cup11 (FoxH.dualEval A) hpair) c

          Clause (iv): the (1,1) evaluation cup c ↦ (d ↦ c ∪ d) : H¹(A) → Hom(H¹(A′), H²(𝔽₂)) is bijective — the transpose of B6's perfect11, discharged by graded-commutativity + counting.

          theorem GQ2.LocalLiftingDuality.bijective_cup02_dualEval {A : Type} [AddCommGroup A] [TopologicalSpace A] [DiscreteTopology A] [Finite A] [DistribMulAction AbsGalQ2 A] [ContinuousSMul AbsGalQ2 A] [TopologicalSpace (FoxH.ElemDual A)] [DiscreteTopology (FoxH.ElemDual A)] [DistribMulAction AbsGalQ2 (FoxH.ElemDual A)] [ContinuousSMul AbsGalQ2 (FoxH.ElemDual A)] [TopologicalSpace (ZMod 2)] [DiscreteTopology (ZMod 2)] [DistribMulAction AbsGalQ2 (ZMod 2)] [ContinuousSMul AbsGalQ2 (ZMod 2)] (hA₂ : ∀ (a : A), a + a = 0) (htriv : ∀ (γ : AbsGalQ2) (m : ZMod 2), γ m = m) (hpair : ∀ (γ : AbsGalQ2) (a : A) (lam : FoxH.ElemDual A), ((FoxH.dualEval A) (γ a)) (γ lam) = γ ((FoxH.dualEval A) a) lam) :
          Function.Bijective fun (c : (ContCoh.H0 AbsGalQ2 A)) => (ContCoh.cup02 (FoxH.dualEval A) hpair) c

          Clause (v): the (0,2) evaluation cup c ↦ (d ↦ c ∪ d) : H⁰(A) → Hom(H²(A′), H²(𝔽₂)) is bijective — the transpose of B6's perfect20 (cup02 = cup20ᵀ swaps the degree pair).

          theorem GQ2.LocalLiftingDuality.bijective_cup20_dualEval {A : Type} [AddCommGroup A] [TopologicalSpace A] [DiscreteTopology A] [Finite A] [DistribMulAction AbsGalQ2 A] [ContinuousSMul AbsGalQ2 A] [TopologicalSpace (FoxH.ElemDual A)] [DiscreteTopology (FoxH.ElemDual A)] [DistribMulAction AbsGalQ2 (FoxH.ElemDual A)] [ContinuousSMul AbsGalQ2 (FoxH.ElemDual A)] [TopologicalSpace (ZMod 2)] [DiscreteTopology (ZMod 2)] [DistribMulAction AbsGalQ2 (ZMod 2)] [ContinuousSMul AbsGalQ2 (ZMod 2)] (hA₂ : ∀ (a : A), a + a = 0) (htriv : ∀ (γ : AbsGalQ2) (m : ZMod 2), γ m = m) (hpair : ∀ (γ : AbsGalQ2) (a : A) (lam : FoxH.ElemDual A), ((FoxH.dualEval A) (γ a)) (γ lam) = γ ((FoxH.dualEval A) a) lam) :
          Function.Bijective fun (c : ContCoh.H2 AbsGalQ2 A) => (ContCoh.cup20 (FoxH.dualEval A) hpair) c

          Clause (vi): the (2,0) evaluation cup c ↦ (d ↦ c ∪ d) : H²(A) → Hom(H⁰(A′), H²(𝔽₂)) is bijective — the transpose of B6's perfect02 (cup20 = cup02ᵀ swaps the degree pair).

          Assembly: the full prop_5_16 conclusion. #

          theorem GQ2.LocalLiftingDuality.prop_5_16_bundle {C : Type u_1} [Group C] [TopologicalSpace C] [DiscreteTopology C] [Finite C] (ρ : AbsGalQ2 →ₜ* C) ( : Function.Surjective ρ) {A : Type} [AddCommGroup A] [TopologicalSpace A] [DiscreteTopology A] [Finite A] [DistribMulAction C A] [DistribMulAction AbsGalQ2 A] [ContinuousSMul AbsGalQ2 A] (hcomp : ∀ (γ : AbsGalQ2) (a : A), γ a = ρ γ a) (hA₂ : ∀ (a : A), a + a = 0) [TopologicalSpace (FoxH.ElemDual A)] [DiscreteTopology (FoxH.ElemDual A)] [DistribMulAction AbsGalQ2 (FoxH.ElemDual A)] [ContinuousSMul AbsGalQ2 (FoxH.ElemDual A)] :
          (∀ (γ : AbsGalQ2) (lam : FoxH.ElemDual A), γ lam = ρ γ lam)∀ [inst : TopologicalSpace (ZMod 2)] [inst✝ : DiscreteTopology (ZMod 2)] [inst✝¹ : DistribMulAction AbsGalQ2 (ZMod 2)] [ContinuousSMul AbsGalQ2 (ZMod 2)] (htriv : ∀ (γ : AbsGalQ2) (m : ZMod 2), γ m = m) (hpair : ∀ (γ : AbsGalQ2) (a : A) (lam : FoxH.ElemDual A), ((FoxH.dualEval A) (γ a)) (γ lam) = γ ((FoxH.dualEval A) a) lam), Nat.card (ContCoh.H2 AbsGalQ2 A) = Nat.card (FoxH.fixedPts C (FoxH.ElemDual A)) Nat.card (ContCoh.Z1 AbsGalQ2 A) = Nat.card A ^ 2 * Nat.card (FoxH.fixedPts C (FoxH.ElemDual A)) Nat.card (ContCoh.H2 AbsGalQ2 (ZMod 2)) = 2 (Function.Bijective fun (c : ContCoh.H1 AbsGalQ2 A) => (ContCoh.cup11 (FoxH.dualEval A) hpair) c) (Function.Bijective fun (c : (ContCoh.H0 AbsGalQ2 A)) => (ContCoh.cup02 (FoxH.dualEval A) hpair) c) Function.Bijective fun (c : ContCoh.H2 AbsGalQ2 A) => (ContCoh.cup20 (FoxH.dualEval A) hpair) c

          prop_5_16 (local lifting duality), fully assembled — all six clauses, stated with the paper's exact signature (GQ2.FoxH.prop_5_16). This is the complete the Prop. 5.16 proof result: clauses (i)–(iii) are the numeric/Euler-characteristic content, (iv)–(vi) the cup-perfectness content.

          GQ2.FoxH.prop_5_16 could not be proved by an exact splice in its original home, because FoxHeisenberg (where it was declared) would then have had to import this file, which already imports FoxHeisenberg (for ElemDual/dualEval) — an import cycle. The statement was therefore relocated out of FoxHeisenberg.lean and is proved from this bundle below.

          §5.16–§5.17, relocated from GQ2/FoxHeisenberg.lean. #

          prop_5_16 and cor_5_17_card are declared here (in their original GQ2.FoxH namespace, so qualified names are unchanged) rather than in FoxHeisenberg.lean, because their proofs need B6 (GQ2.tateDuality) and the 𝔽₂-cup transport — infrastructure in files that import FoxHeisenberg, so proving them there would be an import cycle.

          theorem GQ2.FoxH.prop_5_16 {C : Type u_1} [Group C] [TopologicalSpace C] [DiscreteTopology C] [Finite C] (ρ : AbsGalQ2 →ₜ* C) ( : Function.Surjective ρ) {A : Type} [AddCommGroup A] [TopologicalSpace A] [DiscreteTopology A] [Finite A] [DistribMulAction C A] [DistribMulAction AbsGalQ2 A] [ContinuousSMul AbsGalQ2 A] (hcomp : ∀ (γ : AbsGalQ2) (a : A), γ a = ρ γ a) (hA₂ : ∀ (a : A), a + a = 0) [TopologicalSpace (ElemDual A)] [DiscreteTopology (ElemDual A)] [DistribMulAction AbsGalQ2 (ElemDual A)] [ContinuousSMul AbsGalQ2 (ElemDual A)] (hcompD : ∀ (γ : AbsGalQ2) (lam : ElemDual A), γ lam = ρ γ lam) [TopologicalSpace (ZMod 2)] [DiscreteTopology (ZMod 2)] [DistribMulAction AbsGalQ2 (ZMod 2)] [ContinuousSMul AbsGalQ2 (ZMod 2)] (htriv : ∀ (γ : AbsGalQ2) (m : ZMod 2), γ m = m) (hpair : ∀ (γ : AbsGalQ2) (a : A) (lam : ElemDual A), ((dualEval A) (γ a)) (γ lam) = γ ((dualEval A) a) lam) :
          Nat.card (ContCoh.H2 AbsGalQ2 A) = Nat.card (fixedPts C (ElemDual A)) Nat.card (ContCoh.Z1 AbsGalQ2 A) = Nat.card A ^ 2 * Nat.card (fixedPts C (ElemDual A)) Nat.card (ContCoh.H2 AbsGalQ2 (ZMod 2)) = 2 (Function.Bijective fun (c : ContCoh.H1 AbsGalQ2 A) => (ContCoh.cup11 (dualEval A) hpair) c) (Function.Bijective fun (c : (ContCoh.H0 AbsGalQ2 A)) => (ContCoh.cup02 (dualEval A) hpair) c) Function.Bijective fun (c : ContCoh.H2 AbsGalQ2 A) => (ContCoh.cup20 (dualEval A) hpair) c

          Prop 5.16 (local lifting duality): for a finite elementary module with G_ℚ₂-action factoring through ρ : G_ℚ₂ ↠ C, the display-(57) numerics hold and the cup-product API evaluation-cup pairings are perfect in all three degree pairs (the Tate-duality interface phrasing; the clause #H²(𝔽₂) = 2 certifies the target line). The two-actions setup follows the continuous-cohomology API's compatible-pair pattern: separate C- and G_ℚ₂-actions related pointwise through ρ — no double instance on one type.

          The proof is GQ2.LocalLiftingDuality.prop_5_16_bundle; this is where axioms B6 and B7 enter (App. D row). It lives outside GQ2/FoxHeisenberg.lean to break an public import cycle (the 𝔽₂-cup/B6 infrastructure imports that file).

          theorem GQ2.FoxH.cor_5_17_card {C : Type u_1} [Group C] [TopologicalSpace C] [DiscreteTopology C] [Finite C] (t : Marking C) (ht : t.TameRel) (hw : t.WildRel) (hgen : t.Generates) (hcore : t.Pro2Core) (ρ : AbsGalQ2 →ₜ* C) ( : Function.Surjective ρ) {A : Type} [AddCommGroup A] [TopologicalSpace A] [DiscreteTopology A] [Finite A] [DistribMulAction C A] [DistribMulAction AbsGalQ2 A] [ContinuousSMul AbsGalQ2 A] (hcomp : ∀ (γ : AbsGalQ2) (a : A), γ a = ρ γ a) (hA₂ : ∀ (a : A), a + a = 0) [TopologicalSpace (ElemDual A)] [DiscreteTopology (ElemDual A)] [DistribMulAction AbsGalQ2 (ElemDual A)] [ContinuousSMul AbsGalQ2 (ElemDual A)] (hcompD : ∀ (γ : AbsGalQ2) (lam : ElemDual A), γ lam = ρ γ lam) [TopologicalSpace (ZMod 2)] [DiscreteTopology (ZMod 2)] [DistribMulAction AbsGalQ2 (ZMod 2)] [ContinuousSMul AbsGalQ2 (ZMod 2)] (htriv : ∀ (γ : AbsGalQ2) (m : ZMod 2), γ m = m) (hpair : ∀ (γ : AbsGalQ2) (a : A) (lam : ElemDual A), ((dualEval A) (γ a)) (γ lam) = γ ((dualEval A) a) lam) :
          Nat.card (Z1w t) = Nat.card (ContCoh.Z1 AbsGalQ2 A) Nat.card (H2w t) = Nat.card (ContCoh.H2 AbsGalQ2 A)

          Corollary 5.17, numerics half (proved wiring): the obstruction-space and unobstructed-lift-multiplicity cardinalities agree for the two sources. (The adjoint-boundary identity (58) is deferred: it needs connecting-map infrastructure in both theories — see the module docstring.)

          Paper-tag ledger (auto-generated by paperforge; do not edit) #