Metamath Proof Explorer


Theorem ordtr2

Description: Transitive law for ordinal classes. (Contributed by NM, 12-Dec-2004) (Proof shortened by Andrew Salmon, 25-Jul-2011)

Ref Expression
Assertion ordtr2 ( ( Ord 𝐴 ∧ Ord 𝐶 ) → ( ( 𝐴 ⊆ 𝐵 ∧ 𝐵 ∈ 𝐶 ) → 𝐴 ∈ 𝐶 ) )

Proof

Step Hyp Ref Expression
1 ordelord ⊢ ( ( Ord 𝐶 ∧ 𝐵 ∈ 𝐶 ) → Ord 𝐵 )
2 1 ex ⊢ ( Ord 𝐶 → ( 𝐵 ∈ 𝐶 → Ord 𝐵 ) )
3 2 ancld ⊢ ( Ord 𝐶 → ( 𝐵 ∈ 𝐶 → ( 𝐵 ∈ 𝐶 ∧ Ord 𝐵 ) ) )
4 3 anc2li ⊢ ( Ord 𝐶 → ( 𝐵 ∈ 𝐶 → ( Ord 𝐶 ∧ ( 𝐵 ∈ 𝐶 ∧ Ord 𝐵 ) ) ) )
5 ordelpss ⊢ ( ( Ord 𝐵 ∧ Ord 𝐶 ) → ( 𝐵 ∈ 𝐶 ↔ 𝐵 ⊊ 𝐶 ) )
6 sspsstr ⊢ ( ( 𝐴 ⊆ 𝐵 ∧ 𝐵 ⊊ 𝐶 ) → 𝐴 ⊊ 𝐶 )
7 6 expcom ⊢ ( 𝐵 ⊊ 𝐶 → ( 𝐴 ⊆ 𝐵 → 𝐴 ⊊ 𝐶 ) )
8 5 7 biimtrdi ⊢ ( ( Ord 𝐵 ∧ Ord 𝐶 ) → ( 𝐵 ∈ 𝐶 → ( 𝐴 ⊆ 𝐵 → 𝐴 ⊊ 𝐶 ) ) )
9 8 expcom ⊢ ( Ord 𝐶 → ( Ord 𝐵 → ( 𝐵 ∈ 𝐶 → ( 𝐴 ⊆ 𝐵 → 𝐴 ⊊ 𝐶 ) ) ) )
10 9 com23 ⊢ ( Ord 𝐶 → ( 𝐵 ∈ 𝐶 → ( Ord 𝐵 → ( 𝐴 ⊆ 𝐵 → 𝐴 ⊊ 𝐶 ) ) ) )
11 10 imp32 ⊢ ( ( Ord 𝐶 ∧ ( 𝐵 ∈ 𝐶 ∧ Ord 𝐵 ) ) → ( 𝐴 ⊆ 𝐵 → 𝐴 ⊊ 𝐶 ) )
12 11 com12 ⊢ ( 𝐴 ⊆ 𝐵 → ( ( Ord 𝐶 ∧ ( 𝐵 ∈ 𝐶 ∧ Ord 𝐵 ) ) → 𝐴 ⊊ 𝐶 ) )
13 4 12 syl9 ⊢ ( Ord 𝐶 → ( 𝐴 ⊆ 𝐵 → ( 𝐵 ∈ 𝐶 → 𝐴 ⊊ 𝐶 ) ) )
14 13 impd ⊢ ( Ord 𝐶 → ( ( 𝐴 ⊆ 𝐵 ∧ 𝐵 ∈ 𝐶 ) → 𝐴 ⊊ 𝐶 ) )
15 14 adantl ⊢ ( ( Ord 𝐴 ∧ Ord 𝐶 ) → ( ( 𝐴 ⊆ 𝐵 ∧ 𝐵 ∈ 𝐶 ) → 𝐴 ⊊ 𝐶 ) )
16 ordelpss ⊢ ( ( Ord 𝐴 ∧ Ord 𝐶 ) → ( 𝐴 ∈ 𝐶 ↔ 𝐴 ⊊ 𝐶 ) )
17 15 16 sylibrd ⊢ ( ( Ord 𝐴 ∧ Ord 𝐶 ) → ( ( 𝐴 ⊆ 𝐵 ∧ 𝐵 ∈ 𝐶 ) → 𝐴 ∈ 𝐶 ) )