Update
This commit is contained in:
parent
6fe6bee8bf
commit
b4940d3d78
46
thue-morse.v
46
thue-morse.v
@ -1253,6 +1253,36 @@ Proof.
|
|||||||
generalize J6. generalize J3. apply tm_morphism_app2.
|
generalize J6. generalize J3. apply tm_morphism_app2.
|
||||||
assert (M: b ++ b ++ b ++ tl2 = tm_morphism (skipn (Nat.div2 (length hd2)) (tm_step n))).
|
assert (M: b ++ b ++ b ++ tl2 = tm_morphism (skipn (Nat.div2 (length hd2)) (tm_step n))).
|
||||||
generalize J6. generalize J3. apply tm_morphism_app3.
|
generalize J6. generalize J3. apply tm_morphism_app3.
|
||||||
|
assert (N: b = tm_morphism (firstn (Nat.div2 (length b)) (skipn (Nat.div2 (length hd2)) (tm_step n)))).
|
||||||
|
generalize J. symmetry in M. generalize M. apply tm_morphism_app2.
|
||||||
|
assert (even (length (b++b++b)) = true).
|
||||||
|
rewrite app_length. rewrite app_length.
|
||||||
|
rewrite Nat.even_add_even. assumption.
|
||||||
|
apply Nat.EvenT_Even. apply Nat.even_EvenT.
|
||||||
|
rewrite Nat.even_add_even. assumption.
|
||||||
|
apply Nat.EvenT_Even. apply Nat.even_EvenT. assumption.
|
||||||
|
assert (O: tl2 = tm_morphism (skipn (Nat.div2 (length (b++b++b))) (skipn (Nat.div2 (length hd2)) (tm_step n)))).
|
||||||
|
generalize H0. symmetry in M. generalize M.
|
||||||
|
replace (b++b++b++tl2) with ((b++b++b)++tl2). apply tm_morphism_app3.
|
||||||
|
rewrite app_assoc_reverse. apply app_inv_head_iff.
|
||||||
|
rewrite app_assoc_reverse. reflexivity.
|
||||||
|
assert (hd2 ++ b ++ b ++ b ++ tl2
|
||||||
|
= (tm_morphism (firstn (Nat.div2 (length hd2)) (tm_step n)))
|
||||||
|
++ (tm_morphism (firstn (Nat.div2 (length b)) (skipn (Nat.div2 (length hd2)) (tm_step n))))
|
||||||
|
++ (tm_morphism (firstn (Nat.div2 (length b)) (skipn (Nat.div2 (length hd2)) (tm_step n))))
|
||||||
|
++ (tm_morphism (firstn (Nat.div2 (length b)) (skipn (Nat.div2 (length hd2)) (tm_step n))))
|
||||||
|
++ (tm_morphism (skipn (Nat.div2 (length (b ++ b ++ b))) (skipn (Nat.div2 (length hd2)) (tm_step n))))).
|
||||||
|
rewrite <- L. rewrite <- N. rewrite <- O. reflexivity.
|
||||||
|
rewrite <- tm_morphism_app in H1. rewrite <- tm_morphism_app in H1.
|
||||||
|
rewrite <- tm_morphism_app in H1. rewrite <- tm_morphism_app in H1.
|
||||||
|
rewrite <- J3 in H1.
|
||||||
|
|
||||||
|
rewrite Nat.pred_succ. rewrite <- tm_morphism_eq in H1.
|
||||||
|
exists (firstn (Nat.div2 (length hd2)) (tm_step n)).
|
||||||
|
exists (firstn (Nat.div2 (length b)) (skipn (Nat.div2 (length hd2)) (tm_step n))).
|
||||||
|
exists (skipn (Nat.div2 (length (b ++ b ++ b))) (skipn (Nat.div2 (length hd2)) (tm_step n))).
|
||||||
|
assumption.
|
||||||
|
Qed.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -1261,25 +1291,9 @@ Proof.
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
Lemma tm_morphism_app2 : forall (l hd tl : list bool),
|
|
||||||
tm_morphism l = hd ++ tl
|
|
||||||
-> even (length hd) = true
|
|
||||||
-> hd = tm_morphism (firstn (Nat.div2 (length hd)) l).
|
|
||||||
|
|
||||||
Lemma tm_morphism_app3 : forall (l hd tl : list bool),
|
|
||||||
tm_morphism l = hd ++ tl
|
|
||||||
-> even (length hd) = true
|
|
||||||
-> tl = tm_morphism (skipn (Nat.div2 (length hd)) l).
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Prouver que si un cube existe de taille k, il existe aussi un cube
|
|
||||||
de même taille précédé par un préfixe de taille pair (par décalage éventuel de 1)
|
|
||||||
|
|
||||||
Prouver que si un cube existe, de taille paire, précédé par un préfixe pair,
|
|
||||||
alors (par référence au morphisme, il existait à la génération précédente
|
|
||||||
un cube de taille moitié précédé par un préfixe pair
|
|
||||||
|
|
||||||
--> absurdité : on ne peut diviser indéfiniment par 2 et rester sur du pair
|
--> absurdité : on ne peut diviser indéfiniment par 2 et rester sur du pair
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user