Metamath Proof Explorer


Theorem sotri2

Description: A transitivity relation. (Read A <_ B and B < C implies A < C .) (Contributed by Mario Carneiro, 10-May-2013)

Ref Expression
Hypotheses soi.1 ⊢ 𝑅 Or 𝑆
soi.2 ⊢ 𝑅 ⊆ ( 𝑆 × 𝑆 )
Assertion sotri2 ( ( 𝐴 ∈ 𝑆 ∧ ¬ 𝐵 𝑅 𝐴 ∧ 𝐵 𝑅 𝐶 ) → 𝐴 𝑅 𝐶 )

Proof

Step Hyp Ref Expression
1 soi.1 ⊢ 𝑅 Or 𝑆
2 soi.2 ⊢ 𝑅 ⊆ ( 𝑆 × 𝑆 )
3 2 brel ⊢ ( 𝐵 𝑅 𝐶 → ( 𝐵 ∈ 𝑆 ∧ 𝐶 ∈ 𝑆 ) )
4 3 simpld ⊢ ( 𝐵 𝑅 𝐶 → 𝐵 ∈ 𝑆 )
5 sotric ⊢ ( ( 𝑅 Or 𝑆 ∧ ( 𝐵 ∈ 𝑆 ∧ 𝐴 ∈ 𝑆 ) ) → ( 𝐵 𝑅 𝐴 ↔ ¬ ( 𝐵 = 𝐴 ∨ 𝐴 𝑅 𝐵 ) ) )
6 1 5 mpan ⊢ ( ( 𝐵 ∈ 𝑆 ∧ 𝐴 ∈ 𝑆 ) → ( 𝐵 𝑅 𝐴 ↔ ¬ ( 𝐵 = 𝐴 ∨ 𝐴 𝑅 𝐵 ) ) )
7 6 con2bid ⊢ ( ( 𝐵 ∈ 𝑆 ∧ 𝐴 ∈ 𝑆 ) → ( ( 𝐵 = 𝐴 ∨ 𝐴 𝑅 𝐵 ) ↔ ¬ 𝐵 𝑅 𝐴 ) )
8 breq1 ⊢ ( 𝐵 = 𝐴 → ( 𝐵 𝑅 𝐶 ↔ 𝐴 𝑅 𝐶 ) )
9 8 biimpd ⊢ ( 𝐵 = 𝐴 → ( 𝐵 𝑅 𝐶 → 𝐴 𝑅 𝐶 ) )
10 1 2 sotri ⊢ ( ( 𝐴 𝑅 𝐵 ∧ 𝐵 𝑅 𝐶 ) → 𝐴 𝑅 𝐶 )
11 10 ex ⊢ ( 𝐴 𝑅 𝐵 → ( 𝐵 𝑅 𝐶 → 𝐴 𝑅 𝐶 ) )
12 9 11 jaoi ⊢ ( ( 𝐵 = 𝐴 ∨ 𝐴 𝑅 𝐵 ) → ( 𝐵 𝑅 𝐶 → 𝐴 𝑅 𝐶 ) )
13 7 12 biimtrrdi ⊢ ( ( 𝐵 ∈ 𝑆 ∧ 𝐴 ∈ 𝑆 ) → ( ¬ 𝐵 𝑅 𝐴 → ( 𝐵 𝑅 𝐶 → 𝐴 𝑅 𝐶 ) ) )
14 13 com3r ⊢ ( 𝐵 𝑅 𝐶 → ( ( 𝐵 ∈ 𝑆 ∧ 𝐴 ∈ 𝑆 ) → ( ¬ 𝐵 𝑅 𝐴 → 𝐴 𝑅 𝐶 ) ) )
15 4 14 mpand ⊢ ( 𝐵 𝑅 𝐶 → ( 𝐴 ∈ 𝑆 → ( ¬ 𝐵 𝑅 𝐴 → 𝐴 𝑅 𝐶 ) ) )
16 15 3imp231 ⊢ ( ( 𝐴 ∈ 𝑆 ∧ ¬ 𝐵 𝑅 𝐴 ∧ 𝐵 𝑅 𝐶 ) → 𝐴 𝑅 𝐶 )