ι : Type u_1
M : ι → Type ?u.898798
inst✝⁴ : (i : ι) → Monoid (M i)
N : Type ?u.898809
inst✝³ : Monoid N
hnontriv : Nontrivial ι
G : Type u_3
inst✝² : Group G
H : ι → Type u_2
inst✝¹ : (i : ι) → Group (H i)
f : (i : ι) → H i →* G
hcard : 3 ≤ (#ι) ∨ ∃ i, 3 ≤ (#H i)
α : Type ?u.899590
inst✝ : MulAction G α
X : ι → Set α
hXnonempty : ∀ (i : ι), Set.Nonempty (X i)
hXdisj : Pairwise fun i j => Disjoint (X i) (X j)
hpp : Pairwise fun i j => ∀ (h : H i), h ≠ 1 → ↑(f i) h • X j ⊆ X i
w : Word H
h : ↑(↑lift f) (Word.prod w) = 1
hnotempty : ¬w = Word.empty
⊢ False
ι : Type u_1
M : ι → Type ?u.898798
inst✝⁴ : (i : ι) → Monoid (M i)
N : Type ?u.898809
inst✝³ : Monoid N
hnontriv : Nontrivial ι
G : Type u_3
inst✝² : Group G
H : ι → Type u_2
inst✝¹ : (i : ι) → Group (H i)
f : (i : ι) → H i →* G
hcard : 3 ≤ (#ι) ∨ ∃ i, 3 ≤ (#H i)
α : Type ?u.899590
inst✝ : MulAction G α
X : ι → Set α
hXnonempty : ∀ (i : ι), Set.Nonempty (X i)
hXdisj : Pairwise fun i j => Disjoint (X i) (X j)
hpp : Pairwise fun i j => ∀ (h : H i), h ≠ 1 → ↑(f i) h • X j ⊆ X i
w : Word H
h : ↑(↑lift f) (Word.prod w) = 1
⊢ w = Word.empty
by_contra hnotempty
case intro.intro.intro
ι : Type u_1
M : ι → Type ?u.898798
inst✝⁴ : (i : ι) → Monoid (M i)
N : Type ?u.898809
inst✝³ : Monoid N
hnontriv : Nontrivial ι
G : Type u_3
inst✝² : Group G
H : ι → Type u_2
inst✝¹ : (i : ι) → Group (H i)
f : (i : ι) → H i →* G
hcard : 3 ≤ (#ι) ∨ ∃ i, 3 ≤ (#H i)
α : Type ?u.899590
inst✝ : MulAction G α
X : ι → Set α
hXnonempty : ∀ (i : ι), Set.Nonempty (X i)
hXdisj : Pairwise fun i j => Disjoint (X i) (X j)
hpp : Pairwise fun i j => ∀ (h : H i), h ≠ 1 → ↑(f i) h • X j ⊆ X i
i j : ι
w : NeWord H i j
h : ↑(↑lift f) (Word.prod (NeWord.toWord w)) = 1
hnotempty : ¬NeWord.toWord w = Word.empty
⊢ False
ι : Type u_1
M : ι → Type ?u.898798
inst✝⁴ : (i : ι) → Monoid (M i)
N : Type ?u.898809
inst✝³ : Monoid N
hnontriv : Nontrivial ι
G : Type u_3
inst✝² : Group G
H : ι → Type u_2
inst✝¹ : (i : ι) → Group (H i)
f : (i : ι) → H i →* G
hcard : 3 ≤ (#ι) ∨ ∃ i, 3 ≤ (#H i)
α : Type ?u.899590
inst✝ : MulAction G α
X : ι → Set α
hXnonempty : ∀ (i : ι), Set.Nonempty (X i)
hXdisj : Pairwise fun i j => Disjoint (X i) (X j)
hpp : Pairwise fun i j => ∀ (h : H i), h ≠ 1 → ↑(f i) h • X j ⊆ X i
w : Word H
h : ↑(↑lift f) (Word.prod w) = 1
hnotempty : ¬w = Word.empty
⊢ False
obtain ⟨i, j, w, rfl⟩ := NeWord.of_word w hnotempty
no goals
case intro.intro.intro
ι : Type u_1
M : ι → Type ?u.898798
inst✝⁴ : (i : ι) → Monoid (M i)
N : Type ?u.898809
inst✝³ : Monoid N
hnontriv : Nontrivial ι
G : Type u_3
inst✝² : Group G
H : ι → Type u_2
inst✝¹ : (i : ι) → Group (H i)
f : (i : ι) → H i →* G
hcard : 3 ≤ (#ι) ∨ ∃ i, 3 ≤ (#H i)
α : Type ?u.899590
inst✝ : MulAction G α
X : ι → Set α
hXnonempty : ∀ (i : ι), Set.Nonempty (X i)
hXdisj : Pairwise fun i j => Disjoint (X i) (X j)
hpp : Pairwise fun i j => ∀ (h : H i), h ≠ 1 → ↑(f i) h • X j ⊆ X i
i j : ι
w : NeWord H i j
h : ↑(↑lift f) (Word.prod (NeWord.toWord w)) = 1
hnotempty : ¬NeWord.toWord w = Word.empty
⊢ False
exact lift_word_prod_nontrivial_of_not_empty f hcard X hXnonempty hXdisj hpp w h