OAI/GroupTheory/BooneHigman/GroupInput.lean
55 declarations, 0 contain sorry, 0 declared as axioms
Wreath-product reduction to countably infinite finitely generated decidable input groups.
- def
OAI.FiniteAlgebraicEnvelopes.GroupInput.shiftline 16 - def
OAI.FiniteAlgebraicEnvelopes.GroupInput.shiftsline 23 - abbrev
OAI.FiniteAlgebraicEnvelopes.GroupInput.Ambientline 28 - def
OAI.FiniteAlgebraicEnvelopes.GroupInput.baseline 30 - def
OAI.FiniteAlgebraicEnvelopes.GroupInput.embedline 35 - def
OAI.FiniteAlgebraicEnvelopes.GroupInput.stableline 36 - theorem
OAI.FiniteAlgebraicEnvelopes.GroupInput.embed_injectiveline 38 - theorem
OAI.FiniteAlgebraicEnvelopes.GroupInput.stable_conjline 45 - theorem
OAI.FiniteAlgebraicEnvelopes.GroupInput.commutatorline 54 - abbrev
OAI.FiniteAlgebraicEnvelopes.GroupInput.Lettersline 60 - abbrev
OAI.FiniteAlgebraicEnvelopes.GroupInput.InputWordline 61 - def
OAI.FiniteAlgebraicEnvelopes.GroupInput.generatorsline 63 - def
OAI.FiniteAlgebraicEnvelopes.GroupInput.heightLetterline 68 - def
OAI.FiniteAlgebraicEnvelopes.GroupInput.atLetterline 73 - def
OAI.FiniteAlgebraicEnvelopes.GroupInput.heightline 78 - def
OAI.FiniteAlgebraicEnvelopes.GroupInput.sectionWordline 80 - def
OAI.FiniteAlgebraicEnvelopes.GroupInput.valueline 84 - theorem
OAI.FiniteAlgebraicEnvelopes.GroupInput.height_nilline 87 - theorem
OAI.FiniteAlgebraicEnvelopes.GroupInput.height_consline 88 - theorem
OAI.FiniteAlgebraicEnvelopes.GroupInput.heightLetter_boundsline 91 - theorem
OAI.FiniteAlgebraicEnvelopes.GroupInput.value_nilline 95 - theorem
OAI.FiniteAlgebraicEnvelopes.GroupInput.value_consline 96 - theorem
OAI.FiniteAlgebraicEnvelopes.GroupInput.value_rightline 100 - theorem
OAI.FiniteAlgebraicEnvelopes.GroupInput.signed_rightline 114 - theorem
OAI.FiniteAlgebraicEnvelopes.GroupInput.signed_leftline 121 - theorem
OAI.FiniteAlgebraicEnvelopes.GroupInput.value_cons_leftline 136 - theorem
OAI.FiniteAlgebraicEnvelopes.GroupInput.value_leftline 147 - theorem
OAI.FiniteAlgebraicEnvelopes.GroupInput.at_lowline 155 - theorem
OAI.FiniteAlgebraicEnvelopes.GroupInput.at_highline 168 - theorem
OAI.FiniteAlgebraicEnvelopes.GroupInput.value_eq_one_iffline 183 - def
OAI.FiniteAlgebraicEnvelopes.GroupInput.countsLetterline 215Source documentation
Unsimplified positive/negative counters avoid assuming a computation model on
G.def countsLetter {n} : Letters n × Bool → ℕ × ℕ | (none, true) => (1,0) | (none, false) => (0,1) | (some _, _) => (0,0) - def
OAI.FiniteAlgebraicEnvelopes.GroupInput.countsline 220 - def
OAI.FiniteAlgebraicEnvelopes.GroupInput.natAtLetterline 223 - def
OAI.FiniteAlgebraicEnvelopes.GroupInput.natStepline 229 - def
OAI.FiniteAlgebraicEnvelopes.GroupInput.natAtline 233 - theorem
OAI.FiniteAlgebraicEnvelopes.GroupInput.heightLetter_eqline 236 - theorem
OAI.FiniteAlgebraicEnvelopes.GroupInput.counts_foldline 240 - theorem
OAI.FiniteAlgebraicEnvelopes.GroupInput.counts_eq_heightline 251 - theorem
OAI.FiniteAlgebraicEnvelopes.GroupInput.natAtLetter_eqline 255 - theorem
OAI.FiniteAlgebraicEnvelopes.GroupInput.natStep_foldline 261 - theorem
OAI.FiniteAlgebraicEnvelopes.GroupInput.natAt_eqline 275 - theorem
OAI.FiniteAlgebraicEnvelopes.GroupInput.countsLetter_primrecline 281 - theorem
OAI.FiniteAlgebraicEnvelopes.GroupInput.counts_primrecline 283 - theorem
OAI.FiniteAlgebraicEnvelopes.GroupInput.natAtLetter_primrecline 295 - theorem
OAI.FiniteAlgebraicEnvelopes.GroupInput.natStep_primrecline 315 - theorem
OAI.FiniteAlgebraicEnvelopes.GroupInput.natAt_primrecline 326 - theorem
OAI.FiniteAlgebraicEnvelopes.GroupInput.computable_forall_ltline 334Source documentation
Closure of genuine computability under a variable finite universal test.
theorem computable_forall_lt {α : Type*} [Primcodable α] {p : α × ℕ → Prop} (hp : ComputablePred p) : ComputablePred (fun a : α × ℕ => ∀ k < a.2, p (a.1,k)) := by … - theorem
OAI.FiniteAlgebraicEnvelopes.GroupInput.value_wordProblemline 360Source documentation
The decision procedure for this finitely generated wreath subgroup.
theorem value_wordProblem {n} (s : Fin n → G) (hs : ComputablePred (fun w : Word n => evalWord s w = 1)) : ComputablePred (fun w : InputWord n => value G s w = 1) := by …Mentions: OAI.FiniteAlgebraicEnvelopes.GroupInput.InputWord, OAI.FiniteAlgebraicEnvelopes.GroupInput.value
- def
OAI.FiniteAlgebraicEnvelopes.GroupInput.generatedline 401Source documentation
The finitely generated subgroup, rather than the whole unrestricted wreath product.
def generated {n} (s : Fin n → G) : Subgroup (Ambient G) := … - theorem
OAI.FiniteAlgebraicEnvelopes.GroupInput.embed_mem_generatedline 404 - def
OAI.FiniteAlgebraicEnvelopes.GroupInput.subgroupGeneratorsline 426 - theorem
OAI.FiniteAlgebraicEnvelopes.GroupInput.subgroupGenerators_generateline 429 - theorem
OAI.FiniteAlgebraicEnvelopes.GroupInput.generated_fgline 446 - theorem
OAI.FiniteAlgebraicEnvelopes.GroupInput.generated_wordProblemline 450 - theorem
OAI.FiniteAlgebraicEnvelopes.group_inputline 483Source documentation
Wreath-product reduction using an explicit step-function witness. The construction includes finite and trivial input groups.
theorem group_input (G : Type u) [Group G] (hG : HasDecidableWordProblem G) : ∃ (H : Type u) (_ : Group H), Group.FG H ∧ HasDecidableWordProblem H ∧ ∃ (f : G × G →* H) (s : H), Function.Injective f ∧ ∀ g : G, f (g,g) * s * (f (g,g))⁻¹ * s⁻¹ = f (g,1) := by …