Metamath Proof Explorer


Theorem fzouzsplit

Description: Split an upper integer set into a half-open integer range and another upper integer set. (Contributed by Mario Carneiro, 21-Sep-2016)

Ref Expression
Assertion fzouzsplit ⊢ B ∈ ℤ ≥ A → ℤ ≥ A = A ..^ B ∪ ℤ ≥ B

Proof

Step Hyp Ref Expression
1 eluzelre ⊢ B ∈ ℤ ≥ A → B ∈ ℝ
2 eluzelre ⊢ x ∈ ℤ ≥ A → x ∈ ℝ
3 lelttric ⊢ B ∈ ℝ ∧ x ∈ ℝ → B ≤ x ∨ x < B
4 1 2 3 syl2an ⊢ B ∈ ℤ ≥ A ∧ x ∈ ℤ ≥ A → B ≤ x ∨ x < B
5 4 orcomd ⊢ B ∈ ℤ ≥ A ∧ x ∈ ℤ ≥ A → x < B ∨ B ≤ x
6 id ⊢ x ∈ ℤ ≥ A → x ∈ ℤ ≥ A
7 eluzelz ⊢ B ∈ ℤ ≥ A → B ∈ ℤ
8 elfzo2 ⊢ x ∈ A ..^ B ↔ x ∈ ℤ ≥ A ∧ B ∈ ℤ ∧ x < B
9 df-3an ⊢ x ∈ ℤ ≥ A ∧ B ∈ ℤ ∧ x < B ↔ x ∈ ℤ ≥ A ∧ B ∈ ℤ ∧ x < B
10 8 9 bitri ⊢ x ∈ A ..^ B ↔ x ∈ ℤ ≥ A ∧ B ∈ ℤ ∧ x < B
11 10 baib ⊢ x ∈ ℤ ≥ A ∧ B ∈ ℤ → x ∈ A ..^ B ↔ x < B
12 6 7 11 syl2anr ⊢ B ∈ ℤ ≥ A ∧ x ∈ ℤ ≥ A → x ∈ A ..^ B ↔ x < B
13 eluzelz ⊢ x ∈ ℤ ≥ A → x ∈ ℤ
14 eluz ⊢ B ∈ ℤ ∧ x ∈ ℤ → x ∈ ℤ ≥ B ↔ B ≤ x
15 7 13 14 syl2an ⊢ B ∈ ℤ ≥ A ∧ x ∈ ℤ ≥ A → x ∈ ℤ ≥ B ↔ B ≤ x
16 12 15 orbi12d ⊢ B ∈ ℤ ≥ A ∧ x ∈ ℤ ≥ A → x ∈ A ..^ B ∨ x ∈ ℤ ≥ B ↔ x < B ∨ B ≤ x
17 5 16 mpbird ⊢ B ∈ ℤ ≥ A ∧ x ∈ ℤ ≥ A → x ∈ A ..^ B ∨ x ∈ ℤ ≥ B
18 17 ex ⊢ B ∈ ℤ ≥ A → x ∈ ℤ ≥ A → x ∈ A ..^ B ∨ x ∈ ℤ ≥ B
19 elun ⊢ x ∈ A ..^ B ∪ ℤ ≥ B ↔ x ∈ A ..^ B ∨ x ∈ ℤ ≥ B
20 18 19 imbitrrdi ⊢ B ∈ ℤ ≥ A → x ∈ ℤ ≥ A → x ∈ A ..^ B ∪ ℤ ≥ B
21 20 ssrdv ⊢ B ∈ ℤ ≥ A → ℤ ≥ A ⊆ A ..^ B ∪ ℤ ≥ B
22 elfzouz ⊢ x ∈ A ..^ B → x ∈ ℤ ≥ A
23 22 ssriv ⊢ A ..^ B ⊆ ℤ ≥ A
24 23 a1i ⊢ B ∈ ℤ ≥ A → A ..^ B ⊆ ℤ ≥ A
25 uzss ⊢ B ∈ ℤ ≥ A → ℤ ≥ B ⊆ ℤ ≥ A
26 24 25 unssd ⊢ B ∈ ℤ ≥ A → A ..^ B ∪ ℤ ≥ B ⊆ ℤ ≥ A
27 21 26 eqssd ⊢ B ∈ ℤ ≥ A → ℤ ≥ A = A ..^ B ∪ ℤ ≥ B