Finitely Generated First-Order Structures #
This file defines what it means for a first-order (sub)structure to be finitely or countably generated, similarly to other finitely-generated objects in the algebra library.
Main Definitions #
FirstOrder.Language.Substructure.FG
indicates that a substructure is finitely generated.FirstOrder.Language.Structure.FG
indicates that a structure is finitely generated.FirstOrder.Language.Substructure.CG
indicates that a substructure is countably generated.FirstOrder.Language.Structure.CG
indicates that a structure is countably generated.
TODO #
Develop a more unified definition of finite generation using the theory of closure operators, or use this definition of finite generation to define the others.
A substructure of M
is finitely generated if it is the closure of a finite subset of M
.
Equations
- N.FG = ∃ (S : Finset M), (FirstOrder.Language.Substructure.closure L).toFun ↑S = N
Instances For
A substructure of M
is countably generated if it is the closure of a countable subset of M
.
Equations
- N.CG = ∃ (S : Set M), S.Countable ∧ (FirstOrder.Language.Substructure.closure L).toFun S = N
Instances For
A structure is finitely generated if it is the closure of a finite subset.
- out : ⊤.FG
Instances
A structure is countably generated if it is the closure of a countable subset.
- out : ⊤.CG
Instances
An equivalent expression of Structure.FG
in terms of Set.Finite
instead of Finset
.
An equivalent expression of Structure.cg
.