Metamath Proof Explorer


Theorem swrdnnn0nd

Description: The value of a subword operation for arguments not being nonnegative integers is the empty set. (Contributed by AV, 2-Dec-2022)

Ref Expression
Assertion swrdnnn0nd ( ( 𝑆 ∈ Word 𝑉 ∧ ¬ ( 𝐹 ∈ ℕ0𝐿 ∈ ℕ0 ) ) → ( 𝑆 substr ⟨ 𝐹 , 𝐿 ⟩ ) = ∅ )

Proof

Step Hyp Ref Expression
1 ianor ( ¬ ( 𝐹 ∈ ℕ0𝐿 ∈ ℕ0 ) ↔ ( ¬ 𝐹 ∈ ℕ0 ∨ ¬ 𝐿 ∈ ℕ0 ) )
2 ianor ( ¬ ( 𝐹 ∈ ℤ ∧ 0 ≤ 𝐹 ) ↔ ( ¬ 𝐹 ∈ ℤ ∨ ¬ 0 ≤ 𝐹 ) )
3 elnn0z ( 𝐹 ∈ ℕ0 ↔ ( 𝐹 ∈ ℤ ∧ 0 ≤ 𝐹 ) )
4 2 3 xchnxbir ( ¬ 𝐹 ∈ ℕ0 ↔ ( ¬ 𝐹 ∈ ℤ ∨ ¬ 0 ≤ 𝐹 ) )
5 ianor ( ¬ ( 𝐿 ∈ ℤ ∧ 0 ≤ 𝐿 ) ↔ ( ¬ 𝐿 ∈ ℤ ∨ ¬ 0 ≤ 𝐿 ) )
6 elnn0z ( 𝐿 ∈ ℕ0 ↔ ( 𝐿 ∈ ℤ ∧ 0 ≤ 𝐿 ) )
7 5 6 xchnxbir ( ¬ 𝐿 ∈ ℕ0 ↔ ( ¬ 𝐿 ∈ ℤ ∨ ¬ 0 ≤ 𝐿 ) )
8 4 7 orbi12i ( ( ¬ 𝐹 ∈ ℕ0 ∨ ¬ 𝐿 ∈ ℕ0 ) ↔ ( ( ¬ 𝐹 ∈ ℤ ∨ ¬ 0 ≤ 𝐹 ) ∨ ( ¬ 𝐿 ∈ ℤ ∨ ¬ 0 ≤ 𝐿 ) ) )
9 or4 ( ( ( ¬ 𝐹 ∈ ℤ ∨ ¬ 0 ≤ 𝐹 ) ∨ ( ¬ 𝐿 ∈ ℤ ∨ ¬ 0 ≤ 𝐿 ) ) ↔ ( ( ¬ 𝐹 ∈ ℤ ∨ ¬ 𝐿 ∈ ℤ ) ∨ ( ¬ 0 ≤ 𝐹 ∨ ¬ 0 ≤ 𝐿 ) ) )
10 ianor ( ¬ ( 𝐹 ∈ ℤ ∧ 𝐿 ∈ ℤ ) ↔ ( ¬ 𝐹 ∈ ℤ ∨ ¬ 𝐿 ∈ ℤ ) )
11 10 bicomi ( ( ¬ 𝐹 ∈ ℤ ∨ ¬ 𝐿 ∈ ℤ ) ↔ ¬ ( 𝐹 ∈ ℤ ∧ 𝐿 ∈ ℤ ) )
12 11 orbi1i ( ( ( ¬ 𝐹 ∈ ℤ ∨ ¬ 𝐿 ∈ ℤ ) ∨ ( ¬ 0 ≤ 𝐹 ∨ ¬ 0 ≤ 𝐿 ) ) ↔ ( ¬ ( 𝐹 ∈ ℤ ∧ 𝐿 ∈ ℤ ) ∨ ( ¬ 0 ≤ 𝐹 ∨ ¬ 0 ≤ 𝐿 ) ) )
13 9 12 bitri ( ( ( ¬ 𝐹 ∈ ℤ ∨ ¬ 0 ≤ 𝐹 ) ∨ ( ¬ 𝐿 ∈ ℤ ∨ ¬ 0 ≤ 𝐿 ) ) ↔ ( ¬ ( 𝐹 ∈ ℤ ∧ 𝐿 ∈ ℤ ) ∨ ( ¬ 0 ≤ 𝐹 ∨ ¬ 0 ≤ 𝐿 ) ) )
14 8 13 bitri ( ( ¬ 𝐹 ∈ ℕ0 ∨ ¬ 𝐿 ∈ ℕ0 ) ↔ ( ¬ ( 𝐹 ∈ ℤ ∧ 𝐿 ∈ ℤ ) ∨ ( ¬ 0 ≤ 𝐹 ∨ ¬ 0 ≤ 𝐿 ) ) )
15 1 14 bitri ( ¬ ( 𝐹 ∈ ℕ0𝐿 ∈ ℕ0 ) ↔ ( ¬ ( 𝐹 ∈ ℤ ∧ 𝐿 ∈ ℤ ) ∨ ( ¬ 0 ≤ 𝐹 ∨ ¬ 0 ≤ 𝐿 ) ) )
16 swrdnznd ( ¬ ( 𝐹 ∈ ℤ ∧ 𝐿 ∈ ℤ ) → ( 𝑆 substr ⟨ 𝐹 , 𝐿 ⟩ ) = ∅ )
17 16 a1d ( ¬ ( 𝐹 ∈ ℤ ∧ 𝐿 ∈ ℤ ) → ( 𝑆 ∈ Word 𝑉 → ( 𝑆 substr ⟨ 𝐹 , 𝐿 ⟩ ) = ∅ ) )
18 notnotb ( ( 𝐹 ∈ ℤ ∧ 𝐿 ∈ ℤ ) ↔ ¬ ¬ ( 𝐹 ∈ ℤ ∧ 𝐿 ∈ ℤ ) )
19 zre ( 𝐹 ∈ ℤ → 𝐹 ∈ ℝ )
20 0red ( 𝐹 ∈ ℤ → 0 ∈ ℝ )
21 19 20 jca ( 𝐹 ∈ ℤ → ( 𝐹 ∈ ℝ ∧ 0 ∈ ℝ ) )
22 21 3ad2ant2 ( ( 𝑆 ∈ Word 𝑉𝐹 ∈ ℤ ∧ 𝐿 ∈ ℤ ) → ( 𝐹 ∈ ℝ ∧ 0 ∈ ℝ ) )
23 ltnle ( ( 𝐹 ∈ ℝ ∧ 0 ∈ ℝ ) → ( 𝐹 < 0 ↔ ¬ 0 ≤ 𝐹 ) )
24 22 23 syl ( ( 𝑆 ∈ Word 𝑉𝐹 ∈ ℤ ∧ 𝐿 ∈ ℤ ) → ( 𝐹 < 0 ↔ ¬ 0 ≤ 𝐹 ) )
25 orc ( 𝐹 < 0 → ( 𝐹 < 0 ∨ 𝐿𝐹 ) )
26 24 25 syl6bir ( ( 𝑆 ∈ Word 𝑉𝐹 ∈ ℤ ∧ 𝐿 ∈ ℤ ) → ( ¬ 0 ≤ 𝐹 → ( 𝐹 < 0 ∨ 𝐿𝐹 ) ) )
27 26 com12 ( ¬ 0 ≤ 𝐹 → ( ( 𝑆 ∈ Word 𝑉𝐹 ∈ ℤ ∧ 𝐿 ∈ ℤ ) → ( 𝐹 < 0 ∨ 𝐿𝐹 ) ) )
28 notnotb ( 0 ≤ 𝐹 ↔ ¬ ¬ 0 ≤ 𝐹 )
29 28 a1i ( ( 𝑆 ∈ Word 𝑉𝐹 ∈ ℤ ∧ 𝐿 ∈ ℤ ) → ( 0 ≤ 𝐹 ↔ ¬ ¬ 0 ≤ 𝐹 ) )
30 zre ( 𝐿 ∈ ℤ → 𝐿 ∈ ℝ )
31 0red ( 𝐿 ∈ ℤ → 0 ∈ ℝ )
32 30 31 jca ( 𝐿 ∈ ℤ → ( 𝐿 ∈ ℝ ∧ 0 ∈ ℝ ) )
33 32 3ad2ant3 ( ( 𝑆 ∈ Word 𝑉𝐹 ∈ ℤ ∧ 𝐿 ∈ ℤ ) → ( 𝐿 ∈ ℝ ∧ 0 ∈ ℝ ) )
34 ltnle ( ( 𝐿 ∈ ℝ ∧ 0 ∈ ℝ ) → ( 𝐿 < 0 ↔ ¬ 0 ≤ 𝐿 ) )
35 33 34 syl ( ( 𝑆 ∈ Word 𝑉𝐹 ∈ ℤ ∧ 𝐿 ∈ ℤ ) → ( 𝐿 < 0 ↔ ¬ 0 ≤ 𝐿 ) )
36 29 35 anbi12d ( ( 𝑆 ∈ Word 𝑉𝐹 ∈ ℤ ∧ 𝐿 ∈ ℤ ) → ( ( 0 ≤ 𝐹𝐿 < 0 ) ↔ ( ¬ ¬ 0 ≤ 𝐹 ∧ ¬ 0 ≤ 𝐿 ) ) )
37 30 3ad2ant3 ( ( 𝑆 ∈ Word 𝑉𝐹 ∈ ℤ ∧ 𝐿 ∈ ℤ ) → 𝐿 ∈ ℝ )
38 0red ( ( 𝑆 ∈ Word 𝑉𝐹 ∈ ℤ ∧ 𝐿 ∈ ℤ ) → 0 ∈ ℝ )
39 19 3ad2ant2 ( ( 𝑆 ∈ Word 𝑉𝐹 ∈ ℤ ∧ 𝐿 ∈ ℤ ) → 𝐹 ∈ ℝ )
40 ltleletr ( ( 𝐿 ∈ ℝ ∧ 0 ∈ ℝ ∧ 𝐹 ∈ ℝ ) → ( ( 𝐿 < 0 ∧ 0 ≤ 𝐹 ) → 𝐿𝐹 ) )
41 37 38 39 40 syl3anc ( ( 𝑆 ∈ Word 𝑉𝐹 ∈ ℤ ∧ 𝐿 ∈ ℤ ) → ( ( 𝐿 < 0 ∧ 0 ≤ 𝐹 ) → 𝐿𝐹 ) )
42 olc ( 𝐿𝐹 → ( 𝐹 < 0 ∨ 𝐿𝐹 ) )
43 41 42 syl6 ( ( 𝑆 ∈ Word 𝑉𝐹 ∈ ℤ ∧ 𝐿 ∈ ℤ ) → ( ( 𝐿 < 0 ∧ 0 ≤ 𝐹 ) → ( 𝐹 < 0 ∨ 𝐿𝐹 ) ) )
44 43 ancomsd ( ( 𝑆 ∈ Word 𝑉𝐹 ∈ ℤ ∧ 𝐿 ∈ ℤ ) → ( ( 0 ≤ 𝐹𝐿 < 0 ) → ( 𝐹 < 0 ∨ 𝐿𝐹 ) ) )
45 36 44 sylbird ( ( 𝑆 ∈ Word 𝑉𝐹 ∈ ℤ ∧ 𝐿 ∈ ℤ ) → ( ( ¬ ¬ 0 ≤ 𝐹 ∧ ¬ 0 ≤ 𝐿 ) → ( 𝐹 < 0 ∨ 𝐿𝐹 ) ) )
46 45 com12 ( ( ¬ ¬ 0 ≤ 𝐹 ∧ ¬ 0 ≤ 𝐿 ) → ( ( 𝑆 ∈ Word 𝑉𝐹 ∈ ℤ ∧ 𝐿 ∈ ℤ ) → ( 𝐹 < 0 ∨ 𝐿𝐹 ) ) )
47 27 46 jaoi3 ( ( ¬ 0 ≤ 𝐹 ∨ ¬ 0 ≤ 𝐿 ) → ( ( 𝑆 ∈ Word 𝑉𝐹 ∈ ℤ ∧ 𝐿 ∈ ℤ ) → ( 𝐹 < 0 ∨ 𝐿𝐹 ) ) )
48 47 impcom ( ( ( 𝑆 ∈ Word 𝑉𝐹 ∈ ℤ ∧ 𝐿 ∈ ℤ ) ∧ ( ¬ 0 ≤ 𝐹 ∨ ¬ 0 ≤ 𝐿 ) ) → ( 𝐹 < 0 ∨ 𝐿𝐹 ) )
49 48 orcd ( ( ( 𝑆 ∈ Word 𝑉𝐹 ∈ ℤ ∧ 𝐿 ∈ ℤ ) ∧ ( ¬ 0 ≤ 𝐹 ∨ ¬ 0 ≤ 𝐿 ) ) → ( ( 𝐹 < 0 ∨ 𝐿𝐹 ) ∨ ( ♯ ‘ 𝑆 ) < 𝐿 ) )
50 df-3or ( ( 𝐹 < 0 ∨ 𝐿𝐹 ∨ ( ♯ ‘ 𝑆 ) < 𝐿 ) ↔ ( ( 𝐹 < 0 ∨ 𝐿𝐹 ) ∨ ( ♯ ‘ 𝑆 ) < 𝐿 ) )
51 49 50 sylibr ( ( ( 𝑆 ∈ Word 𝑉𝐹 ∈ ℤ ∧ 𝐿 ∈ ℤ ) ∧ ( ¬ 0 ≤ 𝐹 ∨ ¬ 0 ≤ 𝐿 ) ) → ( 𝐹 < 0 ∨ 𝐿𝐹 ∨ ( ♯ ‘ 𝑆 ) < 𝐿 ) )
52 swrdnd ( ( 𝑆 ∈ Word 𝑉𝐹 ∈ ℤ ∧ 𝐿 ∈ ℤ ) → ( ( 𝐹 < 0 ∨ 𝐿𝐹 ∨ ( ♯ ‘ 𝑆 ) < 𝐿 ) → ( 𝑆 substr ⟨ 𝐹 , 𝐿 ⟩ ) = ∅ ) )
53 52 imp ( ( ( 𝑆 ∈ Word 𝑉𝐹 ∈ ℤ ∧ 𝐿 ∈ ℤ ) ∧ ( 𝐹 < 0 ∨ 𝐿𝐹 ∨ ( ♯ ‘ 𝑆 ) < 𝐿 ) ) → ( 𝑆 substr ⟨ 𝐹 , 𝐿 ⟩ ) = ∅ )
54 51 53 syldan ( ( ( 𝑆 ∈ Word 𝑉𝐹 ∈ ℤ ∧ 𝐿 ∈ ℤ ) ∧ ( ¬ 0 ≤ 𝐹 ∨ ¬ 0 ≤ 𝐿 ) ) → ( 𝑆 substr ⟨ 𝐹 , 𝐿 ⟩ ) = ∅ )
55 54 ex ( ( 𝑆 ∈ Word 𝑉𝐹 ∈ ℤ ∧ 𝐿 ∈ ℤ ) → ( ( ¬ 0 ≤ 𝐹 ∨ ¬ 0 ≤ 𝐿 ) → ( 𝑆 substr ⟨ 𝐹 , 𝐿 ⟩ ) = ∅ ) )
56 55 3expb ( ( 𝑆 ∈ Word 𝑉 ∧ ( 𝐹 ∈ ℤ ∧ 𝐿 ∈ ℤ ) ) → ( ( ¬ 0 ≤ 𝐹 ∨ ¬ 0 ≤ 𝐿 ) → ( 𝑆 substr ⟨ 𝐹 , 𝐿 ⟩ ) = ∅ ) )
57 56 expcom ( ( 𝐹 ∈ ℤ ∧ 𝐿 ∈ ℤ ) → ( 𝑆 ∈ Word 𝑉 → ( ( ¬ 0 ≤ 𝐹 ∨ ¬ 0 ≤ 𝐿 ) → ( 𝑆 substr ⟨ 𝐹 , 𝐿 ⟩ ) = ∅ ) ) )
58 57 com23 ( ( 𝐹 ∈ ℤ ∧ 𝐿 ∈ ℤ ) → ( ( ¬ 0 ≤ 𝐹 ∨ ¬ 0 ≤ 𝐿 ) → ( 𝑆 ∈ Word 𝑉 → ( 𝑆 substr ⟨ 𝐹 , 𝐿 ⟩ ) = ∅ ) ) )
59 18 58 sylbir ( ¬ ¬ ( 𝐹 ∈ ℤ ∧ 𝐿 ∈ ℤ ) → ( ( ¬ 0 ≤ 𝐹 ∨ ¬ 0 ≤ 𝐿 ) → ( 𝑆 ∈ Word 𝑉 → ( 𝑆 substr ⟨ 𝐹 , 𝐿 ⟩ ) = ∅ ) ) )
60 59 imp ( ( ¬ ¬ ( 𝐹 ∈ ℤ ∧ 𝐿 ∈ ℤ ) ∧ ( ¬ 0 ≤ 𝐹 ∨ ¬ 0 ≤ 𝐿 ) ) → ( 𝑆 ∈ Word 𝑉 → ( 𝑆 substr ⟨ 𝐹 , 𝐿 ⟩ ) = ∅ ) )
61 17 60 jaoi3 ( ( ¬ ( 𝐹 ∈ ℤ ∧ 𝐿 ∈ ℤ ) ∨ ( ¬ 0 ≤ 𝐹 ∨ ¬ 0 ≤ 𝐿 ) ) → ( 𝑆 ∈ Word 𝑉 → ( 𝑆 substr ⟨ 𝐹 , 𝐿 ⟩ ) = ∅ ) )
62 15 61 sylbi ( ¬ ( 𝐹 ∈ ℕ0𝐿 ∈ ℕ0 ) → ( 𝑆 ∈ Word 𝑉 → ( 𝑆 substr ⟨ 𝐹 , 𝐿 ⟩ ) = ∅ ) )
63 62 impcom ( ( 𝑆 ∈ Word 𝑉 ∧ ¬ ( 𝐹 ∈ ℕ0𝐿 ∈ ℕ0 ) ) → ( 𝑆 substr ⟨ 𝐹 , 𝐿 ⟩ ) = ∅ )