Metamath Proof Explorer


Theorem wemappo

Description: Construct lexicographic order on a function space based on a well-ordering of the indices and a total ordering of the values.

Without totality on the values or least differing indices, the best we can prove here is a partial order. (Contributed by Stefan O'Rear, 18-Jan-2015) (Revised by AV, 21-Jul-2024)

Ref Expression
Hypothesis wemapso.t 𝑇 = { ⟨ 𝑥 , 𝑦 ⟩ ∣ ∃ 𝑧𝐴 ( ( 𝑥𝑧 ) 𝑆 ( 𝑦𝑧 ) ∧ ∀ 𝑤𝐴 ( 𝑤 𝑅 𝑧 → ( 𝑥𝑤 ) = ( 𝑦𝑤 ) ) ) }
Assertion wemappo ( ( 𝑅 Or 𝐴𝑆 Po 𝐵 ) → 𝑇 Po ( 𝐵m 𝐴 ) )

Proof

Step Hyp Ref Expression
1 wemapso.t 𝑇 = { ⟨ 𝑥 , 𝑦 ⟩ ∣ ∃ 𝑧𝐴 ( ( 𝑥𝑧 ) 𝑆 ( 𝑦𝑧 ) ∧ ∀ 𝑤𝐴 ( 𝑤 𝑅 𝑧 → ( 𝑥𝑤 ) = ( 𝑦𝑤 ) ) ) }
2 simpllr ( ( ( ( 𝑅 Or 𝐴𝑆 Po 𝐵 ) ∧ 𝑎 ∈ ( 𝐵m 𝐴 ) ) ∧ 𝑏𝐴 ) → 𝑆 Po 𝐵 )
3 elmapi ( 𝑎 ∈ ( 𝐵m 𝐴 ) → 𝑎 : 𝐴𝐵 )
4 3 adantl ( ( ( 𝑅 Or 𝐴𝑆 Po 𝐵 ) ∧ 𝑎 ∈ ( 𝐵m 𝐴 ) ) → 𝑎 : 𝐴𝐵 )
5 4 ffvelrnda ( ( ( ( 𝑅 Or 𝐴𝑆 Po 𝐵 ) ∧ 𝑎 ∈ ( 𝐵m 𝐴 ) ) ∧ 𝑏𝐴 ) → ( 𝑎𝑏 ) ∈ 𝐵 )
6 poirr ( ( 𝑆 Po 𝐵 ∧ ( 𝑎𝑏 ) ∈ 𝐵 ) → ¬ ( 𝑎𝑏 ) 𝑆 ( 𝑎𝑏 ) )
7 2 5 6 syl2anc ( ( ( ( 𝑅 Or 𝐴𝑆 Po 𝐵 ) ∧ 𝑎 ∈ ( 𝐵m 𝐴 ) ) ∧ 𝑏𝐴 ) → ¬ ( 𝑎𝑏 ) 𝑆 ( 𝑎𝑏 ) )
8 7 intnanrd ( ( ( ( 𝑅 Or 𝐴𝑆 Po 𝐵 ) ∧ 𝑎 ∈ ( 𝐵m 𝐴 ) ) ∧ 𝑏𝐴 ) → ¬ ( ( 𝑎𝑏 ) 𝑆 ( 𝑎𝑏 ) ∧ ∀ 𝑐𝐴 ( 𝑐 𝑅 𝑏 → ( 𝑎𝑐 ) = ( 𝑎𝑐 ) ) ) )
9 8 nrexdv ( ( ( 𝑅 Or 𝐴𝑆 Po 𝐵 ) ∧ 𝑎 ∈ ( 𝐵m 𝐴 ) ) → ¬ ∃ 𝑏𝐴 ( ( 𝑎𝑏 ) 𝑆 ( 𝑎𝑏 ) ∧ ∀ 𝑐𝐴 ( 𝑐 𝑅 𝑏 → ( 𝑎𝑐 ) = ( 𝑎𝑐 ) ) ) )
10 1 wemaplem1 ( ( 𝑎 ∈ V ∧ 𝑎 ∈ V ) → ( 𝑎 𝑇 𝑎 ↔ ∃ 𝑏𝐴 ( ( 𝑎𝑏 ) 𝑆 ( 𝑎𝑏 ) ∧ ∀ 𝑐𝐴 ( 𝑐 𝑅 𝑏 → ( 𝑎𝑐 ) = ( 𝑎𝑐 ) ) ) ) )
11 10 el2v ( 𝑎 𝑇 𝑎 ↔ ∃ 𝑏𝐴 ( ( 𝑎𝑏 ) 𝑆 ( 𝑎𝑏 ) ∧ ∀ 𝑐𝐴 ( 𝑐 𝑅 𝑏 → ( 𝑎𝑐 ) = ( 𝑎𝑐 ) ) ) )
12 9 11 sylnibr ( ( ( 𝑅 Or 𝐴𝑆 Po 𝐵 ) ∧ 𝑎 ∈ ( 𝐵m 𝐴 ) ) → ¬ 𝑎 𝑇 𝑎 )
13 simplr1 ( ( ( ( 𝑅 Or 𝐴𝑆 Po 𝐵 ) ∧ ( 𝑎 ∈ ( 𝐵m 𝐴 ) ∧ 𝑏 ∈ ( 𝐵m 𝐴 ) ∧ 𝑐 ∈ ( 𝐵m 𝐴 ) ) ) ∧ ( 𝑎 𝑇 𝑏𝑏 𝑇 𝑐 ) ) → 𝑎 ∈ ( 𝐵m 𝐴 ) )
14 simplr2 ( ( ( ( 𝑅 Or 𝐴𝑆 Po 𝐵 ) ∧ ( 𝑎 ∈ ( 𝐵m 𝐴 ) ∧ 𝑏 ∈ ( 𝐵m 𝐴 ) ∧ 𝑐 ∈ ( 𝐵m 𝐴 ) ) ) ∧ ( 𝑎 𝑇 𝑏𝑏 𝑇 𝑐 ) ) → 𝑏 ∈ ( 𝐵m 𝐴 ) )
15 simplr3 ( ( ( ( 𝑅 Or 𝐴𝑆 Po 𝐵 ) ∧ ( 𝑎 ∈ ( 𝐵m 𝐴 ) ∧ 𝑏 ∈ ( 𝐵m 𝐴 ) ∧ 𝑐 ∈ ( 𝐵m 𝐴 ) ) ) ∧ ( 𝑎 𝑇 𝑏𝑏 𝑇 𝑐 ) ) → 𝑐 ∈ ( 𝐵m 𝐴 ) )
16 simplll ( ( ( ( 𝑅 Or 𝐴𝑆 Po 𝐵 ) ∧ ( 𝑎 ∈ ( 𝐵m 𝐴 ) ∧ 𝑏 ∈ ( 𝐵m 𝐴 ) ∧ 𝑐 ∈ ( 𝐵m 𝐴 ) ) ) ∧ ( 𝑎 𝑇 𝑏𝑏 𝑇 𝑐 ) ) → 𝑅 Or 𝐴 )
17 simpllr ( ( ( ( 𝑅 Or 𝐴𝑆 Po 𝐵 ) ∧ ( 𝑎 ∈ ( 𝐵m 𝐴 ) ∧ 𝑏 ∈ ( 𝐵m 𝐴 ) ∧ 𝑐 ∈ ( 𝐵m 𝐴 ) ) ) ∧ ( 𝑎 𝑇 𝑏𝑏 𝑇 𝑐 ) ) → 𝑆 Po 𝐵 )
18 simprl ( ( ( ( 𝑅 Or 𝐴𝑆 Po 𝐵 ) ∧ ( 𝑎 ∈ ( 𝐵m 𝐴 ) ∧ 𝑏 ∈ ( 𝐵m 𝐴 ) ∧ 𝑐 ∈ ( 𝐵m 𝐴 ) ) ) ∧ ( 𝑎 𝑇 𝑏𝑏 𝑇 𝑐 ) ) → 𝑎 𝑇 𝑏 )
19 simprr ( ( ( ( 𝑅 Or 𝐴𝑆 Po 𝐵 ) ∧ ( 𝑎 ∈ ( 𝐵m 𝐴 ) ∧ 𝑏 ∈ ( 𝐵m 𝐴 ) ∧ 𝑐 ∈ ( 𝐵m 𝐴 ) ) ) ∧ ( 𝑎 𝑇 𝑏𝑏 𝑇 𝑐 ) ) → 𝑏 𝑇 𝑐 )
20 1 13 14 15 16 17 18 19 wemaplem3 ( ( ( ( 𝑅 Or 𝐴𝑆 Po 𝐵 ) ∧ ( 𝑎 ∈ ( 𝐵m 𝐴 ) ∧ 𝑏 ∈ ( 𝐵m 𝐴 ) ∧ 𝑐 ∈ ( 𝐵m 𝐴 ) ) ) ∧ ( 𝑎 𝑇 𝑏𝑏 𝑇 𝑐 ) ) → 𝑎 𝑇 𝑐 )
21 20 ex ( ( ( 𝑅 Or 𝐴𝑆 Po 𝐵 ) ∧ ( 𝑎 ∈ ( 𝐵m 𝐴 ) ∧ 𝑏 ∈ ( 𝐵m 𝐴 ) ∧ 𝑐 ∈ ( 𝐵m 𝐴 ) ) ) → ( ( 𝑎 𝑇 𝑏𝑏 𝑇 𝑐 ) → 𝑎 𝑇 𝑐 ) )
22 12 21 ispod ( ( 𝑅 Or 𝐴𝑆 Po 𝐵 ) → 𝑇 Po ( 𝐵m 𝐴 ) )