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 syl6bi ( ( 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 𝐶 ) → ( ( 𝐴𝐵𝐵𝐶 ) → 𝐴𝐶 ) )