Metamath Proof Explorer


Theorem dfttrcl2

Description: When R is a set and a relation, then its transitive closure can be defined by an intersection. (Contributed by Scott Fenton, 26-Oct-2024)

Ref Expression
Assertion dfttrcl2 ⊢ R ∈ V ∧ Rel ⁡ R → t++ R = ⋂ z | R ⊆ z ∧ z ∘ z ⊆ z

Proof

Step Hyp Ref Expression
1 ssintab ⊢ t++ R ⊆ ⋂ z | R ⊆ z ∧ z ∘ z ⊆ z ↔ ∀ z R ⊆ z ∧ z ∘ z ⊆ z → t++ R ⊆ z
2 ttrclss ⊢ R ⊆ z ∧ z ∘ z ⊆ z → t++ R ⊆ z
3 1 2 mpgbir ⊢ t++ R ⊆ ⋂ z | R ⊆ z ∧ z ∘ z ⊆ z
4 3 a1i ⊢ R ∈ V ∧ Rel ⁡ R → t++ R ⊆ ⋂ z | R ⊆ z ∧ z ∘ z ⊆ z
5 rabab ⊢ z ∈ V | R ⊆ z ∧ z ∘ z ⊆ z = z | R ⊆ z ∧ z ∘ z ⊆ z
6 5 inteqi ⊢ ⋂ z ∈ V | R ⊆ z ∧ z ∘ z ⊆ z = ⋂ z | R ⊆ z ∧ z ∘ z ⊆ z
7 ttrclexg ⊢ R ∈ V → t++ R ∈ V
8 ssttrcl ⊢ Rel ⁡ R → R ⊆ t++ R
9 ttrcltr ⊢ t++ R ∘ t++ R ⊆ t++ R
10 8 9 jctir ⊢ Rel ⁡ R → R ⊆ t++ R ∧ t++ R ∘ t++ R ⊆ t++ R
11 sseq2 ⊢ z = t++ R → R ⊆ z ↔ R ⊆ t++ R
12 coeq1 ⊢ z = t++ R → z ∘ z = t++ R ∘ z
13 coeq2 ⊢ z = t++ R → t++ R ∘ z = t++ R ∘ t++ R
14 12 13 eqtrd ⊢ z = t++ R → z ∘ z = t++ R ∘ t++ R
15 id ⊢ z = t++ R → z = t++ R
16 14 15 sseq12d ⊢ z = t++ R → z ∘ z ⊆ z ↔ t++ R ∘ t++ R ⊆ t++ R
17 11 16 anbi12d ⊢ z = t++ R → R ⊆ z ∧ z ∘ z ⊆ z ↔ R ⊆ t++ R ∧ t++ R ∘ t++ R ⊆ t++ R
18 17 intminss ⊢ t++ R ∈ V ∧ R ⊆ t++ R ∧ t++ R ∘ t++ R ⊆ t++ R → ⋂ z ∈ V | R ⊆ z ∧ z ∘ z ⊆ z ⊆ t++ R
19 7 10 18 syl2an ⊢ R ∈ V ∧ Rel ⁡ R → ⋂ z ∈ V | R ⊆ z ∧ z ∘ z ⊆ z ⊆ t++ R
20 6 19 eqsstrrid ⊢ R ∈ V ∧ Rel ⁡ R → ⋂ z | R ⊆ z ∧ z ∘ z ⊆ z ⊆ t++ R
21 4 20 eqssd ⊢ R ∈ V ∧ Rel ⁡ R → t++ R = ⋂ z | R ⊆ z ∧ z ∘ z ⊆ z