Metamath Proof Explorer


Theorem chnso

Description: A chain induces a total order. (Contributed by Thierry Arnoux, 19-Jun-2025)

Ref Expression
Assertion chnso ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ → < ˙ Or ran ⁡ C

Proof

Step Hyp Ref Expression
1 eqidd ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ → C = C
2 ischn ⊢ C ∈ Chain A < ˙ ↔ C ∈ Word A ∧ ∀ n ∈ dom ⁡ C ∖ 0 C ⁡ n − 1 < ˙ C ⁡ n
3 2 bilani ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ → C ∈ Word A ∧ ∀ n ∈ dom ⁡ C ∖ 0 C ⁡ n − 1 < ˙ C ⁡ n
4 3 simpld ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ → C ∈ Word A
5 1 4 wrdfd ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ → C : 0 ..^ C ⟶ A
6 5 frnd ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ → ran ⁡ C ⊆ A
7 simpl ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ → < ˙ Po A
8 poss ⊢ ran ⁡ C ⊆ A → < ˙ Po A → < ˙ Po ran ⁡ C
9 6 7 8 sylc ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ → < ˙ Po ran ⁡ C
10 fzossz ⊢ 0 ..^ C ⊆ ℤ
11 simp-4r ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ ∧ x ∈ ran ⁡ C ∧ y ∈ ran ⁡ C ∧ i ∈ 0 ..^ C ∧ C ⁡ i = x ∧ j ∈ 0 ..^ C ∧ C ⁡ j = y → i ∈ 0 ..^ C
12 10 11 sselid ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ ∧ x ∈ ran ⁡ C ∧ y ∈ ran ⁡ C ∧ i ∈ 0 ..^ C ∧ C ⁡ i = x ∧ j ∈ 0 ..^ C ∧ C ⁡ j = y → i ∈ ℤ
13 12 zred ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ ∧ x ∈ ran ⁡ C ∧ y ∈ ran ⁡ C ∧ i ∈ 0 ..^ C ∧ C ⁡ i = x ∧ j ∈ 0 ..^ C ∧ C ⁡ j = y → i ∈ ℝ
14 simplr ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ ∧ x ∈ ran ⁡ C ∧ y ∈ ran ⁡ C ∧ i ∈ 0 ..^ C ∧ C ⁡ i = x ∧ j ∈ 0 ..^ C ∧ C ⁡ j = y → j ∈ 0 ..^ C
15 10 14 sselid ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ ∧ x ∈ ran ⁡ C ∧ y ∈ ran ⁡ C ∧ i ∈ 0 ..^ C ∧ C ⁡ i = x ∧ j ∈ 0 ..^ C ∧ C ⁡ j = y → j ∈ ℤ
16 15 zred ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ ∧ x ∈ ran ⁡ C ∧ y ∈ ran ⁡ C ∧ i ∈ 0 ..^ C ∧ C ⁡ i = x ∧ j ∈ 0 ..^ C ∧ C ⁡ j = y → j ∈ ℝ
17 13 16 lttri4d ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ ∧ x ∈ ran ⁡ C ∧ y ∈ ran ⁡ C ∧ i ∈ 0 ..^ C ∧ C ⁡ i = x ∧ j ∈ 0 ..^ C ∧ C ⁡ j = y → i < j ∨ i = j ∨ j < i
18 simp-8l ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ ∧ x ∈ ran ⁡ C ∧ y ∈ ran ⁡ C ∧ i ∈ 0 ..^ C ∧ C ⁡ i = x ∧ j ∈ 0 ..^ C ∧ C ⁡ j = y ∧ i < j → < ˙ Po A
19 simp-8r ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ ∧ x ∈ ran ⁡ C ∧ y ∈ ran ⁡ C ∧ i ∈ 0 ..^ C ∧ C ⁡ i = x ∧ j ∈ 0 ..^ C ∧ C ⁡ j = y ∧ i < j → C ∈ Chain A < ˙
20 simpllr ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ ∧ x ∈ ran ⁡ C ∧ y ∈ ran ⁡ C ∧ i ∈ 0 ..^ C ∧ C ⁡ i = x ∧ j ∈ 0 ..^ C ∧ C ⁡ j = y ∧ i < j → j ∈ 0 ..^ C
21 elfzouz ⊢ i ∈ 0 ..^ C → i ∈ ℤ ≥ 0
22 21 ad5antlr ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ ∧ x ∈ ran ⁡ C ∧ y ∈ ran ⁡ C ∧ i ∈ 0 ..^ C ∧ C ⁡ i = x ∧ j ∈ 0 ..^ C ∧ C ⁡ j = y ∧ i < j → i ∈ ℤ ≥ 0
23 15 adantr ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ ∧ x ∈ ran ⁡ C ∧ y ∈ ran ⁡ C ∧ i ∈ 0 ..^ C ∧ C ⁡ i = x ∧ j ∈ 0 ..^ C ∧ C ⁡ j = y ∧ i < j → j ∈ ℤ
24 simpr ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ ∧ x ∈ ran ⁡ C ∧ y ∈ ran ⁡ C ∧ i ∈ 0 ..^ C ∧ C ⁡ i = x ∧ j ∈ 0 ..^ C ∧ C ⁡ j = y ∧ i < j → i < j
25 elfzo2 ⊢ i ∈ 0 ..^ j ↔ i ∈ ℤ ≥ 0 ∧ j ∈ ℤ ∧ i < j
26 22 23 24 25 syl3anbrc ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ ∧ x ∈ ran ⁡ C ∧ y ∈ ran ⁡ C ∧ i ∈ 0 ..^ C ∧ C ⁡ i = x ∧ j ∈ 0 ..^ C ∧ C ⁡ j = y ∧ i < j → i ∈ 0 ..^ j
27 18 19 20 26 chnlt ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ ∧ x ∈ ran ⁡ C ∧ y ∈ ran ⁡ C ∧ i ∈ 0 ..^ C ∧ C ⁡ i = x ∧ j ∈ 0 ..^ C ∧ C ⁡ j = y ∧ i < j → C ⁡ i < ˙ C ⁡ j
28 simp-4r ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ ∧ x ∈ ran ⁡ C ∧ y ∈ ran ⁡ C ∧ i ∈ 0 ..^ C ∧ C ⁡ i = x ∧ j ∈ 0 ..^ C ∧ C ⁡ j = y ∧ i < j → C ⁡ i = x
29 simplr ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ ∧ x ∈ ran ⁡ C ∧ y ∈ ran ⁡ C ∧ i ∈ 0 ..^ C ∧ C ⁡ i = x ∧ j ∈ 0 ..^ C ∧ C ⁡ j = y ∧ i < j → C ⁡ j = y
30 27 28 29 3brtr3d ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ ∧ x ∈ ran ⁡ C ∧ y ∈ ran ⁡ C ∧ i ∈ 0 ..^ C ∧ C ⁡ i = x ∧ j ∈ 0 ..^ C ∧ C ⁡ j = y ∧ i < j → x < ˙ y
31 30 ex ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ ∧ x ∈ ran ⁡ C ∧ y ∈ ran ⁡ C ∧ i ∈ 0 ..^ C ∧ C ⁡ i = x ∧ j ∈ 0 ..^ C ∧ C ⁡ j = y → i < j → x < ˙ y
32 simpr ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ ∧ x ∈ ran ⁡ C ∧ y ∈ ran ⁡ C ∧ i ∈ 0 ..^ C ∧ C ⁡ i = x ∧ j ∈ 0 ..^ C ∧ C ⁡ j = y ∧ i = j → i = j
33 32 fveq2d ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ ∧ x ∈ ran ⁡ C ∧ y ∈ ran ⁡ C ∧ i ∈ 0 ..^ C ∧ C ⁡ i = x ∧ j ∈ 0 ..^ C ∧ C ⁡ j = y ∧ i = j → C ⁡ i = C ⁡ j
34 simp-4r ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ ∧ x ∈ ran ⁡ C ∧ y ∈ ran ⁡ C ∧ i ∈ 0 ..^ C ∧ C ⁡ i = x ∧ j ∈ 0 ..^ C ∧ C ⁡ j = y ∧ i = j → C ⁡ i = x
35 simplr ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ ∧ x ∈ ran ⁡ C ∧ y ∈ ran ⁡ C ∧ i ∈ 0 ..^ C ∧ C ⁡ i = x ∧ j ∈ 0 ..^ C ∧ C ⁡ j = y ∧ i = j → C ⁡ j = y
36 33 34 35 3eqtr3d ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ ∧ x ∈ ran ⁡ C ∧ y ∈ ran ⁡ C ∧ i ∈ 0 ..^ C ∧ C ⁡ i = x ∧ j ∈ 0 ..^ C ∧ C ⁡ j = y ∧ i = j → x = y
37 36 ex ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ ∧ x ∈ ran ⁡ C ∧ y ∈ ran ⁡ C ∧ i ∈ 0 ..^ C ∧ C ⁡ i = x ∧ j ∈ 0 ..^ C ∧ C ⁡ j = y → i = j → x = y
38 simp-8l ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ ∧ x ∈ ran ⁡ C ∧ y ∈ ran ⁡ C ∧ i ∈ 0 ..^ C ∧ C ⁡ i = x ∧ j ∈ 0 ..^ C ∧ C ⁡ j = y ∧ j < i → < ˙ Po A
39 simp-8r ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ ∧ x ∈ ran ⁡ C ∧ y ∈ ran ⁡ C ∧ i ∈ 0 ..^ C ∧ C ⁡ i = x ∧ j ∈ 0 ..^ C ∧ C ⁡ j = y ∧ j < i → C ∈ Chain A < ˙
40 11 adantr ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ ∧ x ∈ ran ⁡ C ∧ y ∈ ran ⁡ C ∧ i ∈ 0 ..^ C ∧ C ⁡ i = x ∧ j ∈ 0 ..^ C ∧ C ⁡ j = y ∧ j < i → i ∈ 0 ..^ C
41 elfzouz ⊢ j ∈ 0 ..^ C → j ∈ ℤ ≥ 0
42 41 ad3antlr ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ ∧ x ∈ ran ⁡ C ∧ y ∈ ran ⁡ C ∧ i ∈ 0 ..^ C ∧ C ⁡ i = x ∧ j ∈ 0 ..^ C ∧ C ⁡ j = y ∧ j < i → j ∈ ℤ ≥ 0
43 12 adantr ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ ∧ x ∈ ran ⁡ C ∧ y ∈ ran ⁡ C ∧ i ∈ 0 ..^ C ∧ C ⁡ i = x ∧ j ∈ 0 ..^ C ∧ C ⁡ j = y ∧ j < i → i ∈ ℤ
44 simpr ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ ∧ x ∈ ran ⁡ C ∧ y ∈ ran ⁡ C ∧ i ∈ 0 ..^ C ∧ C ⁡ i = x ∧ j ∈ 0 ..^ C ∧ C ⁡ j = y ∧ j < i → j < i
45 elfzo2 ⊢ j ∈ 0 ..^ i ↔ j ∈ ℤ ≥ 0 ∧ i ∈ ℤ ∧ j < i
46 42 43 44 45 syl3anbrc ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ ∧ x ∈ ran ⁡ C ∧ y ∈ ran ⁡ C ∧ i ∈ 0 ..^ C ∧ C ⁡ i = x ∧ j ∈ 0 ..^ C ∧ C ⁡ j = y ∧ j < i → j ∈ 0 ..^ i
47 38 39 40 46 chnlt ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ ∧ x ∈ ran ⁡ C ∧ y ∈ ran ⁡ C ∧ i ∈ 0 ..^ C ∧ C ⁡ i = x ∧ j ∈ 0 ..^ C ∧ C ⁡ j = y ∧ j < i → C ⁡ j < ˙ C ⁡ i
48 simplr ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ ∧ x ∈ ran ⁡ C ∧ y ∈ ran ⁡ C ∧ i ∈ 0 ..^ C ∧ C ⁡ i = x ∧ j ∈ 0 ..^ C ∧ C ⁡ j = y ∧ j < i → C ⁡ j = y
49 simp-4r ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ ∧ x ∈ ran ⁡ C ∧ y ∈ ran ⁡ C ∧ i ∈ 0 ..^ C ∧ C ⁡ i = x ∧ j ∈ 0 ..^ C ∧ C ⁡ j = y ∧ j < i → C ⁡ i = x
50 47 48 49 3brtr3d ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ ∧ x ∈ ran ⁡ C ∧ y ∈ ran ⁡ C ∧ i ∈ 0 ..^ C ∧ C ⁡ i = x ∧ j ∈ 0 ..^ C ∧ C ⁡ j = y ∧ j < i → y < ˙ x
51 50 ex ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ ∧ x ∈ ran ⁡ C ∧ y ∈ ran ⁡ C ∧ i ∈ 0 ..^ C ∧ C ⁡ i = x ∧ j ∈ 0 ..^ C ∧ C ⁡ j = y → j < i → y < ˙ x
52 31 37 51 3orim123d ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ ∧ x ∈ ran ⁡ C ∧ y ∈ ran ⁡ C ∧ i ∈ 0 ..^ C ∧ C ⁡ i = x ∧ j ∈ 0 ..^ C ∧ C ⁡ j = y → i < j ∨ i = j ∨ j < i → x < ˙ y ∨ x = y ∨ y < ˙ x
53 17 52 mpd ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ ∧ x ∈ ran ⁡ C ∧ y ∈ ran ⁡ C ∧ i ∈ 0 ..^ C ∧ C ⁡ i = x ∧ j ∈ 0 ..^ C ∧ C ⁡ j = y → x < ˙ y ∨ x = y ∨ y < ˙ x
54 5 ffnd ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ → C Fn 0 ..^ C
55 54 ad4antr ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ ∧ x ∈ ran ⁡ C ∧ y ∈ ran ⁡ C ∧ i ∈ 0 ..^ C ∧ C ⁡ i = x → C Fn 0 ..^ C
56 simpllr ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ ∧ x ∈ ran ⁡ C ∧ y ∈ ran ⁡ C ∧ i ∈ 0 ..^ C ∧ C ⁡ i = x → y ∈ ran ⁡ C
57 fvelrnb ⊢ C Fn 0 ..^ C → y ∈ ran ⁡ C ↔ ∃ j ∈ 0 ..^ C C ⁡ j = y
58 57 biimpa ⊢ C Fn 0 ..^ C ∧ y ∈ ran ⁡ C → ∃ j ∈ 0 ..^ C C ⁡ j = y
59 55 56 58 syl2anc ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ ∧ x ∈ ran ⁡ C ∧ y ∈ ran ⁡ C ∧ i ∈ 0 ..^ C ∧ C ⁡ i = x → ∃ j ∈ 0 ..^ C C ⁡ j = y
60 53 59 r19.29a ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ ∧ x ∈ ran ⁡ C ∧ y ∈ ran ⁡ C ∧ i ∈ 0 ..^ C ∧ C ⁡ i = x → x < ˙ y ∨ x = y ∨ y < ˙ x
61 54 ad2antrr ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ ∧ x ∈ ran ⁡ C ∧ y ∈ ran ⁡ C → C Fn 0 ..^ C
62 simplr ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ ∧ x ∈ ran ⁡ C ∧ y ∈ ran ⁡ C → x ∈ ran ⁡ C
63 fvelrnb ⊢ C Fn 0 ..^ C → x ∈ ran ⁡ C ↔ ∃ i ∈ 0 ..^ C C ⁡ i = x
64 63 biimpa ⊢ C Fn 0 ..^ C ∧ x ∈ ran ⁡ C → ∃ i ∈ 0 ..^ C C ⁡ i = x
65 61 62 64 syl2anc ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ ∧ x ∈ ran ⁡ C ∧ y ∈ ran ⁡ C → ∃ i ∈ 0 ..^ C C ⁡ i = x
66 60 65 r19.29a ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ ∧ x ∈ ran ⁡ C ∧ y ∈ ran ⁡ C → x < ˙ y ∨ x = y ∨ y < ˙ x
67 66 anasss ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ ∧ x ∈ ran ⁡ C ∧ y ∈ ran ⁡ C → x < ˙ y ∨ x = y ∨ y < ˙ x
68 9 67 issod ⊢ < ˙ Po A ∧ C ∈ Chain A < ˙ → < ˙ Or ran ⁡ C