Adjunctions
Recall:
Term algebras
Theorem: For any S-sorted set X of variables, Σ-algebra A and valuation
v : X → |A|, there is a unique Σ-homomorphism v# : TΣ(X) → A that extends v, so that
idX ,→|TΣ(X )|;v# = v
X |TΣ(X)|
|A|
TΣ(X)
A -
HH
HH
HH
HH H
j ? ?
idX ,→|TΣ(X )|
v |v#| ∃! v#
SetS Alg(Σ)
Free objects
Consider any functor G : K0 → K
Definition: Given an object A ∈ |K|, a free object over A w.r.t. G is a K0-object A0 ∈ |K0| together with a K-morphism ηA: A → G(A0) (called unit morphism) such that given any K0-object B0 ∈ |K0| with K-morphism f : A → G(B0), for a unique K0-morphism f#: A0 → B0 we have
ηA;G(f#) = f
Paradigmatic example:
Term algebra TΣ(X) with unit idX ,→|TΣ(X )|: X → |TΣ(X)| is free over X ∈ |SetS| w.r.t. the carrier functor | | : Alg(Σ) → SetS
G
K K0
A ηA - G(A0) A0
B0 G(B0)
H
HH
HH
HH
HHj f
? ?
∃! f# G(f#)
Free objects
Consider any functor G : K0 → K
Definition: Given an object A ∈ |K|, a free object over A w.r.t. G is a K0-object A0 ∈ |K0| together with a K-morphism ηA: A → G(A0) (called unit morphism) such that given any K0-object B0 ∈ |K0| with K-morphism f : A → G(B0), for a unique K0-morphism f#: A0 → B0 we have
ηA;G(f#) = f
Paradigmatic example:
Term algebra TΣ(X) with unit idX ,→|TΣ(X )|: X → |TΣ(X)| is free over X ∈ |SetS| w.r.t. the carrier functor | | : Alg(Σ) → SetS
G
K K0
A ηA - G(A0) A0
B0 G(B0)
H
HH
HH
HH
HHj f
? ?
∃! f# G(f#)
Free objects
Consider any functor G : K0 → K
Definition: Given an object A ∈ |K|, a free object over A w.r.t. G is a K0-object A0 ∈ |K0| together with a K-morphism ηA: A → G(A0) (called unit morphism) such that given any K0-object B0 ∈ |K0| with K-morphism f : A → G(B0), for a unique K0-morphism f#: A0 → B0 we have
ηA;G(f#) = f
Paradigmatic example:
Term algebra TΣ(X) with unit idX ,→|TΣ(X )|: X → |TΣ(X)| is free over X ∈ |SetS| w.r.t. the carrier functor | | : Alg(Σ) → SetS
G
K K0
A ηA - G(A0) A0
B0 G(B0)
H
HH
HH
HH
HHj f
? ?
∃! f# G(f#)
Free objects
Consider any functor G : K0 → K
Definition: Given an object A ∈ |K|, a free object over A w.r.t. G is a K0-object A0 ∈ |K0| together with a K-morphism ηA: A → G(A0) (called unit morphism) such that given any K0-object B0 ∈ |K0| with K-morphism f : A → G(B0), for a unique K0-morphism f#: A0 → B0 we have
ηA;G(f#) = f
Paradigmatic example:
Term algebra TΣ(X) with unit idX ,→|TΣ(X )|: X → |TΣ(X)| is free over X ∈ |SetS| w.r.t. the carrier functor | | : Alg(Σ) → SetS
G
K K0
A ηA - G(A0) A0
B0 G(B0)
H
HH
HH
HH
HHj f
? ?
∃! f# G(f#)
Free objects
Consider any functor G : K0 → K
Definition: Given an object A ∈ |K|, a free object over A w.r.t. G is a K0-object A0 ∈ |K0| together with a K-morphism ηA: A → G(A0) (called unit morphism) such that given any K0-object B0 ∈ |K0| with K-morphism f : A → G(B0), for a unique K0-morphism f#: A0 → B0 we have
ηA;G(f#) = f
Paradigmatic example:
Term algebra TΣ(X) with unit idX ,→|TΣ(X )|: X → |TΣ(X)| is free over X ∈ |SetS| w.r.t. the carrier functor | | : Alg(Σ) → SetS
G
K K0
A ηA - G(A0) A0
B0 G(B0)
H
HH
HH
HH
HHj f
? ?
∃! f# G(f#)
Free objects
Consider any functor G : K0 → K
Definition: Given an object A ∈ |K|, a free object over A w.r.t. G is a K0-object A0 ∈ |K0| together with a K-morphism ηA: A → G(A0) (called unit morphism) such that given any K0-object B0 ∈ |K0| with K-morphism f : A → G(B0), for a unique K0-morphism f#: A0 → B0 we have
ηA;G(f#) = f
Paradigmatic example:
Term algebra TΣ(X) with unit idX ,→|TΣ(X )|: X → |TΣ(X)| is free over X ∈ |SetS| w.r.t. the carrier functor | | : Alg(Σ) → SetS
G
K K0
A ηA - G(A0) A0
B0 G(B0)
H
HH
HH
HH
HHj f
? ?
∃! f# G(f#)
Free objects
Consider any functor G : K0 → K
Definition: Given an object A ∈ |K|, a free object over A w.r.t. G is a K0-object A0 ∈ |K0| together with a K-morphism ηA: A → G(A0) (called unit morphism) such that given any K0-object B0 ∈ |K0| with K-morphism f : A → G(B0), for a unique K0-morphism f#: A0 → B0 we have
ηA;G(f#) = f
Paradigmatic example:
Term algebra TΣ(X) with unit idX ,→|TΣ(X )|: X → |TΣ(X)| is free over X ∈ |SetS| w.r.t. the carrier functor | | : Alg(Σ) → SetS
G
K K0
A ηA - G(A0) A0
B0 G(B0)
H
HH
HH
HH
HHj f
? ?
∃! f# G(f#)
Examples
• Consider inclusion i : Int ,→ Real, viewing Int and Real as (thin) categories, and i as a functor between them. For any real r ∈ Real, the ceiling of r,
dre ∈ Int is free over r w.r.t. i.
Examples
• Consider inclusion i : Int ,→ Real, viewing Int and Real as (thin) categories, and i as a functor between them. For any real r ∈ Real, the ceiling of r,
dre ∈ Int is free over r w.r.t. i.
i
Real Int
r ≤ - dre dre
k k
H
HH
HH
HH
HHHj
≤
? ?
≤
≤
Examples
• Consider inclusion i : Int ,→ Real, viewing Int and Real as (thin) categories, and i as a functor between them. For any real r ∈ Real, the ceiling of r,
dre ∈ Int is free over r w.r.t. i.
i
Real Int
r ≤ - dre dre
k k
H
HH
HH
HH
HHHj
≤
? ?
≤
≤
Examples
• Consider inclusion i : Int ,→ Real, viewing Int and Real as (thin) categories, and i as a functor between them. For any real r ∈ Real, the ceiling of r,
dre ∈ Int is free over r w.r.t. i.
i
Real Int
r ≤ - dre dre
k k
H
HH
HH
HH
HHHj
≤
? ?
≤
≤
Examples
• Consider inclusion i : Int ,→ Real, viewing Int and Real as (thin) categories, and i as a functor between them. For any real r ∈ Real, the ceiling of r,
dre ∈ Int is free over r w.r.t. i.
i
Real Int
r ≤ - dre dre
k k
H
HH
HH
HH
HHHj
≤
? ?
≤
≤
Examples
• Consider inclusion i : Int ,→ Real, viewing Int and Real as (thin) categories, and i as a functor between them. For any real r ∈ Real, the ceiling of r,
dre ∈ Int is free over r w.r.t. i.
What about free objects w.r.t. the inclusion of rationals into reals?
Examples
• Consider inclusion i : Int ,→ Real, viewing Int and Real as (thin) categories, and i as a functor between them. For any real r ∈ Real, the ceiling of r,
dre ∈ Int is free over r w.r.t. i.
What about free objects w.r.t. the inclusion of rationals into reals?
• For any set X ∈ |Set|, the “free monoid” List(X) = hX∗, b, i is free over X w.r.t. | | : Monoid → Set.
Set | | Monoid
X - X∗ hX∗, b , i
singX
hM, ;, ei M
H
HH
HH
HH
HHHj f
? ?
f# f#
Examples
• Consider inclusion i : Int ,→ Real, viewing Int and Real as (thin) categories, and i as a functor between them. For any real r ∈ Real, the ceiling of r,
dre ∈ Int is free over r w.r.t. i.
What about free objects w.r.t. the inclusion of rationals into reals?
• For any set X ∈ |Set|, the “free monoid” List(X) = hX∗, b, i is free over X w.r.t. | | : Monoid → Set.
Set | | Monoid
X - X∗ hX∗, b, i
singX
hM, ;, ei M
H
HH
HH
HH
HHHj f
? ?
f# f#
Examples
• Consider inclusion i : Int ,→ Real, viewing Int and Real as (thin) categories, and i as a functor between them. For any real r ∈ Real, the ceiling of r,
dre ∈ Int is free over r w.r.t. i.
What about free objects w.r.t. the inclusion of rationals into reals?
• For any set X ∈ |Set|, the “free monoid” List(X) = hX∗, b, i is free over X w.r.t. | | : Monoid → Set.
Set | | Monoid
X - X∗ hX∗, b, i
singX
hM, ;, ei M
H
HH
HH
HH
HHHj f
? ?
f# f#
Examples
• Consider inclusion i : Int ,→ Real, viewing Int and Real as (thin) categories, and i as a functor between them. For any real r ∈ Real, the ceiling of r,
dre ∈ Int is free over r w.r.t. i.
What about free objects w.r.t. the inclusion of rationals into reals?
• For any set X ∈ |Set|, the “free monoid” List(X) = hX∗, b, i is free over X w.r.t. | | : Monoid → Set.
Set | | Monoid
X - X∗ hX∗, b, i
singX
hM, ;, ei M
H
HH
HH
HH
HHHj f
? ?
f# f#
Examples
• Consider inclusion i : Int ,→ Real, viewing Int and Real as (thin) categories, and i as a functor between them. For any real r ∈ Real, the ceiling of r,
dre ∈ Int is free over r w.r.t. i.
What about free objects w.r.t. the inclusion of rationals into reals?
• For any set X ∈ |Set|, the “free monoid” List(X) = hX∗, b, i is free over X w.r.t. | | : Monoid → Set.
• For any graph G ∈ |Graph|, the category of its paths, Path(G) ∈ |Cat|, is free over G w.r.t. the graph functor G : Cat → Graph.
Examples
• Consider inclusion i : Int ,→ Real, viewing Int and Real as (thin) categories, and i as a functor between them. For any real r ∈ Real, the ceiling of r,
dre ∈ Int is free over r w.r.t. i.
What about free objects w.r.t. the inclusion of rationals into reals?
• For any set X ∈ |Set|, the “free monoid” List(X) = hX∗, b, i is free over X w.r.t. | | : Monoid → Set.
• For any graph G ∈ |Graph|, the category of its paths, Path(G) ∈ |Cat|, is free over G w.r.t. the graph functor G : Cat → Graph.
G
Graph Cat
G - G(Path(G)) Path(G)
G(K) K HH
HH
HH
HH H j h
? ?
h# h#
Examples
• Consider inclusion i : Int ,→ Real, viewing Int and Real as (thin) categories, and i as a functor between them. For any real r ∈ Real, the ceiling of r,
dre ∈ Int is free over r w.r.t. i.
What about free objects w.r.t. the inclusion of rationals into reals?
• For any set X ∈ |Set|, the “free monoid” List(X) = hX∗, b, i is free over X w.r.t. | | : Monoid → Set.
• For any graph G ∈ |Graph|, the category of its paths, Path(G) ∈ |Cat|, is free over G w.r.t. the graph functor G : Cat → Graph.
G
Graph Cat
G - G(Path(G)) Path(G)
G(K) K HH
HH
HH
HH H j h
? ?
h# h#
Examples
• Consider inclusion i : Int ,→ Real, viewing Int and Real as (thin) categories, and i as a functor between them. For any real r ∈ Real, the ceiling of r,
dre ∈ Int is free over r w.r.t. i.
What about free objects w.r.t. the inclusion of rationals into reals?
• For any set X ∈ |Set|, the “free monoid” List(X) = hX∗, b, i is free over X w.r.t. | | : Monoid → Set.
• For any graph G ∈ |Graph|, the category of its paths, Path(G) ∈ |Cat|, is free over G w.r.t. the graph functor G : Cat → Graph.
G
Graph Cat
G - G(Path(G)) Path(G)
G(K) K HH
HH
HH
HH H j h
? ?
h# h#
Examples
• Consider inclusion i : Int ,→ Real, viewing Int and Real as (thin) categories, and i as a functor between them. For any real r ∈ Real, the ceiling of r,
dre ∈ Int is free over r w.r.t. i.
What about free objects w.r.t. the inclusion of rationals into reals?
• For any set X ∈ |Set|, the “free monoid” List(X) = hX∗, b, i is free over X w.r.t. | | : Monoid → Set.
• For any graph G ∈ |Graph|, the category of its paths, Path(G) ∈ |Cat|, is free over G w.r.t. the graph functor G : Cat → Graph.
G
Graph Cat
G - G(Path(G)) Path(G)
G(K) K HH
HH
HH
HH H j h
? ?
h# h#
Examples
• Consider inclusion i : Int ,→ Real, viewing Int and Real as (thin) categories, and i as a functor between them. For any real r ∈ Real, the ceiling of r,
dre ∈ Int is free over r w.r.t. i.
What about free objects w.r.t. the inclusion of rationals into reals?
• For any set X ∈ |Set|, the “free monoid” List(X) = hX∗, b, i is free over X w.r.t. | | : Monoid → Set.
• For any graph G ∈ |Graph|, the category of its paths, Path(G) ∈ |Cat|, is free over G w.r.t. the graph functor G : Cat → Graph.
• Discrete topologies, completion of metric spaces, free groups, ideal completion of partial orders, ideal completion of free partial algebras, . . .
Makes precise these and other similar examples Indicate unit morphisms!
Examples
• Consider inclusion i : Int ,→ Real, viewing Int and Real as (thin) categories, and i as a functor between them. For any real r ∈ Real, the ceiling of r,
dre ∈ Int is free over r w.r.t. i.
What about free objects w.r.t. the inclusion of rationals into reals?
• For any set X ∈ |Set|, the “free monoid” List(X) = hX∗, b, i is free over X w.r.t. | | : Monoid → Set.
• For any graph G ∈ |Graph|, the category of its paths, Path(G) ∈ |Cat|, is free over G w.r.t. the graph functor G : Cat → Graph.
• Discrete topologies, completion of metric spaces, free groups, ideal completion of partial orders, ideal completion of free partial algebras, . . .
Makes precise these and other similar examples Indicate unit morphisms!
Free equational models
• Recall: for any algebraic signature Σ = hS, Ωi, term algebra TΣ(X) is free over X ∈ |SetS| w.r.t. the carrier functor | | : Alg(Σ) → SetS.
Free equational models
• Recall: for any algebraic signature Σ = hS, Ωi, term algebra TΣ(X) is free over X ∈ |SetS| w.r.t. the carrier functor | | : Alg(Σ) → SetS.
Free equational models
• Recall: for any algebraic signature Σ = hS, Ωi, term algebra TΣ(X) is free over X ∈ |SetS| w.r.t. the carrier functor | | : Alg(Σ) → SetS.
| |
SetS Alg(Σ)
X - |TΣ(X)| TΣ(X)
idX ,→|TΣ(X )|
|B| B H
HH
HH
HH
HHj f
? ?
f# f#
Free equational models
• Recall: for any algebraic signature Σ = hS, Ωi, term algebra TΣ(X) is free over X ∈ |SetS| w.r.t. the carrier functor | | : Alg(Σ) → SetS.
• For any set of Σ-equations Φ, for any set X ∈ |SetS|, there exist a model FΦ(X) ∈ Mod (Φ) that is free over X w.r.t. the carrier functor
| | : Mod(hΣ, Φi) → SetS, where Mod(hΣ, Φi) is the full subcategory of Alg(Σ) given by the models of Φ.
Free equational models
• Recall: for any algebraic signature Σ = hS, Ωi, term algebra TΣ(X) is free over X ∈ |SetS| w.r.t. the carrier functor | | : Alg(Σ) → SetS.
• For any set of Σ-equations Φ, for any set X ∈ |SetS|, there exist a model FΦ(X) ∈ Mod (Φ) that is free over X w.r.t. the carrier functor
| | : Mod(hΣ, Φi) → SetS, where Mod(hΣ, Φi) is the full subcategory of
Alg(Σ) given by the models of Φ. Recall: FΦ(X) is TΣ(X)/≡, where ≡ is the congruence on TΣ(X) such that t1 ≡ t2 iff Φ |= ∀X.t1 = t2.
| |
SetS Mod(hΣ, Φi)
X - |FΦ(X)| FΦ(X)
[ ]≡
|B| B H
HH
HH
HH
HHj f
? ?
f# f#
Free equational models
• Recall: for any algebraic signature Σ = hS, Ωi, term algebra TΣ(X) is free over X ∈ |SetS| w.r.t. the carrier functor | | : Alg(Σ) → SetS.
• For any set of Σ-equations Φ, for any set X ∈ |SetS|, there exist a model FΦ(X) ∈ Mod (Φ) that is free over X w.r.t. the carrier functor
| | : Mod(hΣ, Φi) → SetS, where Mod(hΣ, Φi) is the full subcategory of
Alg(Σ) given by the models of Φ. Recall: FΦ(X) is TΣ(X)/≡, where ≡ is the congruence on TΣ(X) such that t1 ≡ t2 iff Φ |= ∀X.t1 = t2.
| |
SetS Mod(hΣ, Φi)
X - |FΦ(X)| FΦ(X)
[ ]≡
|B| B H
HH
HH
HH
HHj f
? ?
f# f#
Free equational models
• Recall: for any algebraic signature Σ = hS, Ωi, term algebra TΣ(X) is free over X ∈ |SetS| w.r.t. the carrier functor | | : Alg(Σ) → SetS.
• For any set of Σ-equations Φ, for any set X ∈ |SetS|, there exist a model FΦ(X) ∈ Mod (Φ) that is free over X w.r.t. the carrier functor
| | : Mod(hΣ, Φi) → SetS, where Mod(hΣ, Φi) is the full subcategory of Alg(Σ) given by the models of Φ.
• For any algebraic signature morphism σ : Σ → Σ0, for any Σ-algebra
A ∈ |Alg(Σ)|, there exist a Σ0-algebra Fσ(A) ∈ |Alg(Σ0)| that is free over A w.r.t. the reduct functor σ : Alg(Σ0) → Alg(Σ).
• For any equational specification morphism σ : hΣ, Φi → hΣ0, Φ0i, for any model A ∈ Mod (Φ), there exist a model FΦσ0(A) ∈ Mod (Φ0) that is free over A w.r.t.
the reduct functor σ : Mod(hΣ0, Φ0i) → Mod(hΣ, Φi).
Prove the above.
Fact: For any algebraic signature inclusion σ : Σ ,→ Σ , for any Σ-algebra A ∈ |Alg(Σ)|, there exist a Σ0-algebra Fσ(A) ∈ |Alg(Σ0)| that is free over A w.r.t. the reduct functor σ : Alg(Σ0) → Alg(Σ).
Proof (idea): Define Fσ(A) to be TΣ0(|A|)/≡ with unit [ ]≡: A → (TΣ0(|A|)/≡) σ, where ≡ is the least congruence on TΣ0(|A|) such that for f : s1 × . . . ×n → s in Σ and a1 ∈ |A|s1,. . . ,an ∈ |A|s1, fA(a1, . . . , an) ≡ f (a1, . . . , an)
Alg(Σ) σ Alg(Σ0)
A TΣ0(|A|)
[ ]≡ TΣ0(|A|)/≡
(TΣ0(|A|)/≡) σ -
[ ]≡
( )B0[h]
B0 B0 σ
H
HH
HH
HH
HHj h
? ?
h# h# σ
Fact: For any algebraic signature inclusion σ : Σ ,→ Σ , for any Σ-algebra A ∈ |Alg(Σ)|, there exist a Σ0-algebra Fσ(A) ∈ |Alg(Σ0)| that is free over A w.r.t. the reduct functor σ : Alg(Σ0) → Alg(Σ).
Proof (idea): Define Fσ(A) to be TΣ0(|A|)/≡ with unit [ ]≡: A → (TΣ0(|A|)/≡) σ, where ≡ is the least congruence on TΣ0(|A|) such that for f : s1 × . . . ×n → s in Σ and a1 ∈ |A|s1,. . . ,an ∈ |A|s1, fA(a1, . . . , an) ≡ f (a1, . . . , an)
Alg(Σ) σ Alg(Σ0)
A TΣ0(|A|)
[ ]≡ TΣ0(|A|)/≡
(TΣ0(|A|)/≡) σ -
[ ]≡
( )B0[h]
B0 B0 σ
H
HH
HH
HH
HHj h
? ?
h# h# σ
Fact: For any algebraic signature inclusion σ : Σ ,→ Σ , for any Σ-algebra A ∈ |Alg(Σ)|, there exist a Σ0-algebra Fσ(A) ∈ |Alg(Σ0)| that is free over A w.r.t. the reduct functor σ : Alg(Σ0) → Alg(Σ).
Proof (idea): Define Fσ(A) to be TΣ0(|A|)/≡ with unit [ ]≡: A → (TΣ0(|A|)/≡) σ, where ≡ is the least congruence on TΣ0(|A|) such that for f : s1 × . . . ×n → s in Σ and a1 ∈ |A|s1,. . . ,an ∈ |A|s1, fA(a1, . . . , an) ≡ f (a1, . . . , an)
Alg(Σ) σ Alg(Σ0)
A TΣ0(|A|)
[ ]≡ TΣ0(|A|)/≡
(TΣ0(|A|)/≡) σ -
[ ]≡
( )B0[h]
B0 B0 σ
H
HH
HH
HH
HHj h
? ?
h# h# σ
Fact: For any algebraic signature inclusion σ : Σ ,→ Σ , for any Σ-algebra A ∈ |Alg(Σ)|, there exist a Σ0-algebra Fσ(A) ∈ |Alg(Σ0)| that is free over A w.r.t. the reduct functor σ : Alg(Σ0) → Alg(Σ).
Proof (idea): Define Fσ(A) to be TΣ0(|A|)/≡ with unit [ ]≡: A → (TΣ0(|A|)/≡) σ, where ≡ is the least congruence on TΣ0(|A|) such that for f : s1 × . . . ×n → s in Σ and a1 ∈ |A|s1,. . . ,an ∈ |A|s1, fA(a1, . . . , an) ≡ f (a1, . . . , an)
• [ ]≡: A → (TΣ0(|A|)/≡) σ is indeed a Σ-homomorphism, since [fA(a1, . . . , an)]≡ = [f (a1, . . . , an)]≡ = fT
Σ0(|A|)/≡([a1]≡, . . . , [an]≡)
Alg(Σ) σ Alg(Σ0)
A TΣ0(|A|)
[ ]≡ TΣ0(|A|)/≡
(TΣ0(|A|)/≡) σ -
[ ]≡
( )B0[h]
B0 B0 σ
H
HH
HH
HH
HHj h
? ?
h# h# σ
Fact: For any algebraic signature inclusion σ : Σ ,→ Σ , for any Σ-algebra A ∈ |Alg(Σ)|, there exist a Σ0-algebra Fσ(A) ∈ |Alg(Σ0)| that is free over A w.r.t. the reduct functor σ : Alg(Σ0) → Alg(Σ).
Proof (idea): Define Fσ(A) to be TΣ0(|A|)/≡ with unit [ ]≡: A → (TΣ0(|A|)/≡) σ, where ≡ is the least congruence on TΣ0(|A|) such that for f : s1 × . . . ×n → s in Σ and a1 ∈ |A|s1,. . . ,an ∈ |A|s1, fA(a1, . . . , an) ≡ f (a1, . . . , an)
• for B0 ∈ |Alg(Σ0)| and h : A → B0 σ, consider ( )B0[h] : TΣ0(|A|) → B0. Then ≡ ⊆ K(( )B0[h]),
Alg(Σ) σ Alg(Σ0)
A TΣ0(|A|)
[ ]≡ TΣ0(|A|)/≡
(TΣ0(|A|)/≡) σ -
[ ]≡
( )B0[h]
B0 B0 σ
H
HH
HH
HH
HHj h
? ?
h# h# σ
Fact: For any algebraic signature inclusion σ : Σ ,→ Σ , for any Σ-algebra A ∈ |Alg(Σ)|, there exist a Σ0-algebra Fσ(A) ∈ |Alg(Σ0)| that is free over A w.r.t. the reduct functor σ : Alg(Σ0) → Alg(Σ).
Proof (idea): Define Fσ(A) to be TΣ0(|A|)/≡ with unit [ ]≡: A → (TΣ0(|A|)/≡) σ, where ≡ is the least congruence on TΣ0(|A|) such that for f : s1 × . . . ×n → s in Σ and a1 ∈ |A|s1,. . . ,an ∈ |A|s1, fA(a1, . . . , an) ≡ f (a1, . . . , an)
• for B0 ∈ |Alg(Σ0)| and h : A → B0 σ, consider ( )B0[h] : TΣ0(|A|) → B0. Then ≡ ⊆ K(( )B0[h]),
Alg(Σ) σ Alg(Σ0)
A TΣ0(|A|)
[ ]≡ TΣ0(|A|)/≡
(TΣ0(|A|)/≡) σ -
[ ]≡
( )B0[h]
B0 B0 σ
H
HH
HH
HH
HHj h
? ?
h# h# σ
Fact: For any algebraic signature inclusion σ : Σ ,→ Σ , for any Σ-algebra A ∈ |Alg(Σ)|, there exist a Σ0-algebra Fσ(A) ∈ |Alg(Σ0)| that is free over A w.r.t. the reduct functor σ : Alg(Σ0) → Alg(Σ).
Proof (idea): Define Fσ(A) to be TΣ0(|A|)/≡ with unit [ ]≡: A → (TΣ0(|A|)/≡) σ, where ≡ is the least congruence on TΣ0(|A|) such that for f : s1 × . . . ×n → s in Σ and a1 ∈ |A|s1,. . . ,an ∈ |A|s1, fA(a1, . . . , an) ≡ f (a1, . . . , an)
• for B0 ∈ |Alg(Σ0)| and h : A → B0 σ, consider ( )B0[h] : TΣ0(|A|) → B0. Then ≡ ⊆ K(( )B0[h]),
Alg(Σ) σ Alg(Σ0)
A TΣ0(|A|)
[ ]≡ TΣ0(|A|)/≡
(TΣ0(|A|)/≡) σ -
[ ]≡
( )B0[h]
B0 B0 σ
H
HH
HH
HH
HHj h
? ?
h# h# σ
Fact: For any algebraic signature inclusion σ : Σ ,→ Σ , for any Σ-algebra A ∈ |Alg(Σ)|, there exist a Σ0-algebra Fσ(A) ∈ |Alg(Σ0)| that is free over A w.r.t. the reduct functor σ : Alg(Σ0) → Alg(Σ).
Proof (idea): Define Fσ(A) to be TΣ0(|A|)/≡ with unit [ ]≡: A → (TΣ0(|A|)/≡) σ, where ≡ is the least congruence on TΣ0(|A|) such that for f : s1 × . . . ×n → s in Σ and a1 ∈ |A|s1,. . . ,an ∈ |A|s1, fA(a1, . . . , an) ≡ f (a1, . . . , an)
• for B0 ∈ |Alg(Σ0)| and h : A → B0 σ, consider ( )B0[h] : TΣ0(|A|) → B0. Then ≡ ⊆ K(( )B0[h]), since:
hs(fA(a1, . . . , an)) = fB0(hs1(a1), . . . , hsn(an)) = (f (a1, . . . , an))B0[h]
Alg(Σ) σ Alg(Σ0)
A TΣ0(|A|)
[ ]≡ TΣ0(|A|)/≡
(TΣ0(|A|)/≡) σ -
[ ]≡
( )B0[h]
B0 B0 σ
H
HH
HH
HH
HHj h
? ?
h# h# σ
Fact: For any algebraic signature inclusion σ : Σ ,→ Σ , for any Σ-algebra A ∈ |Alg(Σ)|, there exist a Σ0-algebra Fσ(A) ∈ |Alg(Σ0)| that is free over A w.r.t. the reduct functor σ : Alg(Σ0) → Alg(Σ).
Proof (idea): Define Fσ(A) to be TΣ0(|A|)/≡ with unit [ ]≡: A → (TΣ0(|A|)/≡) σ, where ≡ is the least congruence on TΣ0(|A|) such that for f : s1 × . . . ×n → s in Σ and a1 ∈ |A|s1,. . . ,an ∈ |A|s1, fA(a1, . . . , an) ≡ f (a1, . . . , an)
• for B0 ∈ |Alg(Σ0)| and h : A → B0 σ, consider ( )B0[h] : TΣ0(|A|) → B0. Then ≡ ⊆ K(( )B0[h]), and so there is unique Σ0-homomorphism
h#: (TΣ0(|A|)/≡) → B0 such that [ ]≡;h# = ( )B0[h].
Alg(Σ) σ Alg(Σ0)
A TΣ0(|A|)
[ ]≡ TΣ0(|A|)/≡
(TΣ0(|A|)/≡) σ -
[ ]≡
( )B0[h]
B0 B0 σ
H
HH
HH
HH
HHj h
? ?
h# h# σ
Free equational models
• Recall: for any algebraic signature Σ = hS, Ωi, term algebra TΣ(X) is free over X ∈ |SetS| w.r.t. the carrier functor | | : Alg(Σ) → SetS.
• For any set of Σ-equations Φ, for any set X ∈ |SetS|, there exist a model FΦ(X) ∈ Mod (Φ) that is free over X w.r.t. the carrier functor
| | : Mod(hΣ, Φi) → SetS, where Mod(hΣ, Φi) is the full subcategory of Alg(Σ) given by the models of Φ.
• For any algebraic signature morphism σ : Σ → Σ0, for any Σ-algebra
A ∈ |Alg(Σ)|, there exist a Σ0-algebra Fσ(A) ∈ |Alg(Σ0)| that is free over A w.r.t. the reduct functor σ : Alg(Σ0) → Alg(Σ).
• For any equational specification morphism σ : hΣ, Φi → hΣ0, Φ0i, for any model A ∈ Mod (Φ), there exist a model FΦσ0(A) ∈ Mod (Φ0) that is free over A w.r.t.
the reduct functor σ : Mod(hΣ0, Φ0i) → Mod(hΣ, Φi).
Prove the above.
Fact: For any algebraic signature morphism σ : Σ → Σ and set Φ of Σ -equations, for any Σ-algebra A ∈ |Alg(Σ)|, there exist a Σ0-algebra FΦσ0(A) ∈ Mod (Φ0) that is free over A w.r.t. the reduct functor σ : Mod(hΣ0, Φ0i) → Alg(Σ).
Proof (idea): Define FΦσ0(A) to be TΣ0(X0)/≡ with unit [ ]≡: A → (TΣ0(X0)/≡) σ, where Xs00 = U
σ(s)=s0 |A|s and ≡ is the least congruence on TΣ0(X0) such that t1 ≡ t2 when Φ0 |= ∀X0.t1 = t2 as well as for f : s1 × . . . ×n → s in Σ and
a1 ∈ |A|s1,. . . ,an ∈ |A|s1, fA(a1, . . . , an) ≡ σ(f )(a1, . . . , an)
Alg(Σ) σ Mod(hΣ0, Φ0i) ⊆ Alg(Σ0)
A TΣ0(X0)
[ ]≡
TΣ0(X0)/≡
(TΣ0(X0)/≡) σ -
[ ]≡
( )B0[h0] B0
B0 σ HH
HH
HH
HH H j h
? ?
h# h# σ
Fact: For any algebraic signature morphism σ : Σ → Σ and set Φ of Σ -equations, for any Σ-algebra A ∈ |Alg(Σ)|, there exist a Σ0-algebra FΦσ0(A) ∈ Mod (Φ0) that is free over A w.r.t. the reduct functor σ : Mod(hΣ0, Φ0i) → Alg(Σ).
Proof (idea): Define FΦσ0(A) to be TΣ0(X0)/≡ with unit [ ]≡: A → (TΣ0(X0)/≡) σ, where Xs00 = U
σ(s)=s0 |A|s and ≡ is the least congruence on TΣ0(X0) such that t1 ≡ t2 when Φ0 |= ∀X0.t1 = t2 as well as for f : s1 × . . . ×n → s in Σ and
a1 ∈ |A|s1,. . . ,an ∈ |A|s1, fA(a1, . . . , an) ≡ σ(f )(a1, . . . , an)
Alg(Σ) σ Mod(hΣ0, Φ0i) ⊆ Alg(Σ0)
A TΣ0(X0)
[ ]≡
TΣ0(X0)/≡
(TΣ0(X0)/≡) σ -
[ ]≡
( )B0[h0] B0
B0 σ HH
HH
HH
HH H j h
? ?
h# h# σ
Fact: For any algebraic signature morphism σ : Σ → Σ and set Φ of Σ -equations, for any Σ-algebra A ∈ |Alg(Σ)|, there exist a Σ0-algebra FΦσ0(A) ∈ Mod (Φ0) that is free over A w.r.t. the reduct functor σ : Mod(hΣ0, Φ0i) → Alg(Σ).
Proof (idea): Define FΦσ0(A) to be TΣ0(X0)/≡ with unit [ ]≡: A → (TΣ0(X0)/≡) σ, where Xs00 = U
σ(s)=s0 |A|s and ≡ is the least congruence on TΣ0(X0) such that t1 ≡ t2 when Φ0 |= ∀X0.t1 = t2 as well as for f : s1 × . . . ×n → s in Σ and
a1 ∈ |A|s1,. . . ,an ∈ |A|s1, fA(a1, . . . , an) ≡ σ(f )(a1, . . . , an)
Alg(Σ) σ Mod(hΣ0, Φ0i) ⊆ Alg(Σ0)
A TΣ0(X0)
[ ]≡
TΣ0(X0)/≡
(TΣ0(X0)/≡) σ -
[ ]≡
( )B0[h0] B0
B0 σ HH
HH
HH
HH H j h
? ?
h# h# σ
Fact: For any algebraic signature morphism σ : Σ → Σ and set Φ of Σ -equations, for any Σ-algebra A ∈ |Alg(Σ)|, there exist a Σ0-algebra FΦσ0(A) ∈ Mod (Φ0) that is free over A w.r.t. the reduct functor σ : Mod(hΣ0, Φ0i) → Alg(Σ).
Proof (idea): Define FΦσ0(A) to be TΣ0(X0)/≡ with unit [ ]≡: A → (TΣ0(X0)/≡) σ, where Xs00 = U
σ(s)=s0 |A|s and ≡ is the least congruence on TΣ0(X0) such that t1 ≡ t2 when Φ0 |= ∀X0.t1 = t2 as well as for f : s1 × . . . ×n → s in Σ and
a1 ∈ |A|s1,. . . ,an ∈ |A|s1, fA(a1, . . . , an) ≡ σ(f )(a1, . . . , an)
Alg(Σ) σ Mod(hΣ0, Φ0i) ⊆ Alg(Σ0)
A TΣ0(X0)
[ ]≡
TΣ0(X0)/≡
(TΣ0(X0)/≡) σ -
[ ]≡
( )B0[h0] B0
B0 σ HH
HH
HH
HH H j h
? ?
h# h# σ
Fact: For any algebraic signature morphism σ : Σ → Σ and set Φ of Σ -equations, for any Σ-algebra A ∈ |Alg(Σ)|, there exist a Σ0-algebra FΦσ0(A) ∈ Mod (Φ0) that is free over A w.r.t. the reduct functor σ : Mod(hΣ0, Φ0i) → Alg(Σ).
Proof (idea): Define FΦσ0(A) to be TΣ0(X0)/≡ with unit [ ]≡: A → (TΣ0(X0)/≡) σ, where Xs00 = U
σ(s)=s0 |A|s and ≡ is the least congruence on TΣ0(X0) such that t1 ≡ t2 when Φ0 |= ∀X0.t1 = t2 as well as for f : s1 × . . . ×n → s in Σ and
a1 ∈ |A|s1,. . . ,an ∈ |A|s1, fA(a1, . . . , an) ≡ σ(f )(a1, . . . , an)
Alg(Σ) σ Mod(hΣ0, Φ0i) ⊆ Alg(Σ0)
A TΣ0(X0)
[ ]≡
TΣ0(X0)/≡
(TΣ0(X0)/≡) σ -
[ ]≡
( )B0[h0] B0
B0 σ HH
HH
HH
HH H j h
? ?
h# h# σ
Fact: For any algebraic signature morphism σ : Σ → Σ and set Φ of Σ -equations, for any Σ-algebra A ∈ |Alg(Σ)|, there exist a Σ0-algebra FΦσ0(A) ∈ Mod (Φ0) that is free over A w.r.t. the reduct functor σ : Mod(hΣ0, Φ0i) → Alg(Σ).
Proof (idea): Define FΦσ0(A) to be TΣ0(X0)/≡ with unit [ ]≡: A → (TΣ0(X0)/≡) σ, where Xs00 = U
σ(s)=s0 |A|s and ≡ is the least congruence on TΣ0(X0) such that t1 ≡ t2 when Φ0 |= ∀X0.t1 = t2 as well as for f : s1 × . . . ×n → s in Σ and
a1 ∈ |A|s1,. . . ,an ∈ |A|s1, fA(a1, . . . , an) ≡ σ(f )(a1, . . . , an)
• TΣ0(|A|)/≡ |= Φ0, i.e. indeed TΣ0(|A|)/≡ ∈ Mod (Φ0)
Alg(Σ) σ Mod(hΣ0, Φ0i) ⊆ Alg(Σ0)
A TΣ0(X0)
[ ]≡
TΣ0(X0)/≡
(TΣ0(X0)/≡) σ -
[ ]≡
( )B0[h0] B0
B0 σ HH
HH
HH
HH H j h
? ?
h# h# σ
Fact: For any algebraic signature morphism σ : Σ → Σ and set Φ of Σ -equations, for any Σ-algebra A ∈ |Alg(Σ)|, there exist a Σ0-algebra FΦσ0(A) ∈ Mod (Φ0) that is free over A w.r.t. the reduct functor σ : Mod(hΣ0, Φ0i) → Alg(Σ).
Proof (idea): Define FΦσ0(A) to be TΣ0(X0)/≡ with unit [ ]≡: A → (TΣ0(X0)/≡) σ, where Xs00 = U
σ(s)=s0 |A|s and ≡ is the least congruence on TΣ0(X0) such that t1 ≡ t2 when Φ0 |= ∀X0.t1 = t2 as well as for f : s1 × . . . ×n → s in Σ and
a1 ∈ |A|s1,. . . ,an ∈ |A|s1, fA(a1, . . . , an) ≡ σ(f )(a1, . . . , an)
• [ ]≡: A → (TΣ0(|A|)/≡) σ is indeed a Σ-homomorphism, since [fA(a1, . . . , an)]≡ = [σ(f )(a1, . . . , an)]≡ = f(T
Σ0(X0)/≡) σ([a1]≡, . . . , [an]≡)
Alg(Σ) σ Mod(hΣ0, Φ0i) ⊆ Alg(Σ0)
A TΣ0(X0)
[ ]≡ TΣ0(X0)/≡
(TΣ0(X0)/≡) σ -
[ ]≡
( )B0[h0] B0
B0 σ H
HH
HH
HH
HHj h
? ?
h# h# σ
Fact: For any algebraic signature morphism σ : Σ → Σ and set Φ of Σ -equations, for any Σ-algebra A ∈ |Alg(Σ)|, there exist a Σ0-algebra FΦσ0(A) ∈ Mod (Φ0) that is free over A w.r.t. the reduct functor σ : Mod(hΣ0, Φ0i) → Alg(Σ).
Proof (idea): Define FΦσ0(A) to be TΣ0(X0)/≡ with unit [ ]≡: A → (TΣ0(X0)/≡) σ, where Xs00 = U
σ(s)=s0 |A|s and ≡ is the least congruence on TΣ0(X0) such that t1 ≡ t2 when Φ0 |= ∀X0.t1 = t2 as well as for f : s1 × . . . ×n → s in Σ and
a1 ∈ |A|s1,. . . ,an ∈ |A|s1, fA(a1, . . . , an) ≡ σ(f )(a1, . . . , an)
• for B0 ∈ |Mod(hΣ0, Φ0i)| and h : A → B0 σ, ≡ ⊆ K(( )B0[h0]) (h0: X0 → |B0| is as h),
Alg(Σ) σ Mod(hΣ0, Φ0i) ⊆ Alg(Σ0)
A TΣ0(X0)
[ ]≡ TΣ0(X0)/≡
(TΣ0(X0)/≡) σ -
[ ]≡
( )B0[h0] B0
B0 σ HH
HH
HH
HH H j h
? ?
h# h# σ