Metamath Proof Explorer


Theorem uzin

Description: Intersection of two upper intervals of integers. (Contributed by Mario Carneiro, 24-Dec-2013)

Ref Expression
Assertion uzin ( ( 𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ ) → ( ( ℤ𝑀 ) ∩ ( ℤ𝑁 ) ) = ( ℤ ‘ if ( 𝑀𝑁 , 𝑁 , 𝑀 ) ) )

Proof

Step Hyp Ref Expression
1 uztric ( ( 𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ ) → ( 𝑁 ∈ ( ℤ𝑀 ) ∨ 𝑀 ∈ ( ℤ𝑁 ) ) )
2 uzss ( 𝑁 ∈ ( ℤ𝑀 ) → ( ℤ𝑁 ) ⊆ ( ℤ𝑀 ) )
3 sseqin2 ( ( ℤ𝑁 ) ⊆ ( ℤ𝑀 ) ↔ ( ( ℤ𝑀 ) ∩ ( ℤ𝑁 ) ) = ( ℤ𝑁 ) )
4 2 3 sylib ( 𝑁 ∈ ( ℤ𝑀 ) → ( ( ℤ𝑀 ) ∩ ( ℤ𝑁 ) ) = ( ℤ𝑁 ) )
5 eluzle ( 𝑁 ∈ ( ℤ𝑀 ) → 𝑀𝑁 )
6 iftrue ( 𝑀𝑁 → if ( 𝑀𝑁 , 𝑁 , 𝑀 ) = 𝑁 )
7 5 6 syl ( 𝑁 ∈ ( ℤ𝑀 ) → if ( 𝑀𝑁 , 𝑁 , 𝑀 ) = 𝑁 )
8 7 fveq2d ( 𝑁 ∈ ( ℤ𝑀 ) → ( ℤ ‘ if ( 𝑀𝑁 , 𝑁 , 𝑀 ) ) = ( ℤ𝑁 ) )
9 4 8 eqtr4d ( 𝑁 ∈ ( ℤ𝑀 ) → ( ( ℤ𝑀 ) ∩ ( ℤ𝑁 ) ) = ( ℤ ‘ if ( 𝑀𝑁 , 𝑁 , 𝑀 ) ) )
10 uzss ( 𝑀 ∈ ( ℤ𝑁 ) → ( ℤ𝑀 ) ⊆ ( ℤ𝑁 ) )
11 df-ss ( ( ℤ𝑀 ) ⊆ ( ℤ𝑁 ) ↔ ( ( ℤ𝑀 ) ∩ ( ℤ𝑁 ) ) = ( ℤ𝑀 ) )
12 10 11 sylib ( 𝑀 ∈ ( ℤ𝑁 ) → ( ( ℤ𝑀 ) ∩ ( ℤ𝑁 ) ) = ( ℤ𝑀 ) )
13 eluzle ( 𝑀 ∈ ( ℤ𝑁 ) → 𝑁𝑀 )
14 eluzel2 ( 𝑀 ∈ ( ℤ𝑁 ) → 𝑁 ∈ ℤ )
15 eluzelz ( 𝑀 ∈ ( ℤ𝑁 ) → 𝑀 ∈ ℤ )
16 zre ( 𝑁 ∈ ℤ → 𝑁 ∈ ℝ )
17 zre ( 𝑀 ∈ ℤ → 𝑀 ∈ ℝ )
18 letri3 ( ( 𝑁 ∈ ℝ ∧ 𝑀 ∈ ℝ ) → ( 𝑁 = 𝑀 ↔ ( 𝑁𝑀𝑀𝑁 ) ) )
19 16 17 18 syl2an ( ( 𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ ) → ( 𝑁 = 𝑀 ↔ ( 𝑁𝑀𝑀𝑁 ) ) )
20 14 15 19 syl2anc ( 𝑀 ∈ ( ℤ𝑁 ) → ( 𝑁 = 𝑀 ↔ ( 𝑁𝑀𝑀𝑁 ) ) )
21 13 20 mpbirand ( 𝑀 ∈ ( ℤ𝑁 ) → ( 𝑁 = 𝑀𝑀𝑁 ) )
22 21 biimprcd ( 𝑀𝑁 → ( 𝑀 ∈ ( ℤ𝑁 ) → 𝑁 = 𝑀 ) )
23 6 eqeq1d ( 𝑀𝑁 → ( if ( 𝑀𝑁 , 𝑁 , 𝑀 ) = 𝑀𝑁 = 𝑀 ) )
24 22 23 sylibrd ( 𝑀𝑁 → ( 𝑀 ∈ ( ℤ𝑁 ) → if ( 𝑀𝑁 , 𝑁 , 𝑀 ) = 𝑀 ) )
25 24 com12 ( 𝑀 ∈ ( ℤ𝑁 ) → ( 𝑀𝑁 → if ( 𝑀𝑁 , 𝑁 , 𝑀 ) = 𝑀 ) )
26 iffalse ( ¬ 𝑀𝑁 → if ( 𝑀𝑁 , 𝑁 , 𝑀 ) = 𝑀 )
27 25 26 pm2.61d1 ( 𝑀 ∈ ( ℤ𝑁 ) → if ( 𝑀𝑁 , 𝑁 , 𝑀 ) = 𝑀 )
28 27 fveq2d ( 𝑀 ∈ ( ℤ𝑁 ) → ( ℤ ‘ if ( 𝑀𝑁 , 𝑁 , 𝑀 ) ) = ( ℤ𝑀 ) )
29 12 28 eqtr4d ( 𝑀 ∈ ( ℤ𝑁 ) → ( ( ℤ𝑀 ) ∩ ( ℤ𝑁 ) ) = ( ℤ ‘ if ( 𝑀𝑁 , 𝑁 , 𝑀 ) ) )
30 9 29 jaoi ( ( 𝑁 ∈ ( ℤ𝑀 ) ∨ 𝑀 ∈ ( ℤ𝑁 ) ) → ( ( ℤ𝑀 ) ∩ ( ℤ𝑁 ) ) = ( ℤ ‘ if ( 𝑀𝑁 , 𝑁 , 𝑀 ) ) )
31 1 30 syl ( ( 𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ ) → ( ( ℤ𝑀 ) ∩ ( ℤ𝑁 ) ) = ( ℤ ‘ if ( 𝑀𝑁 , 𝑁 , 𝑀 ) ) )