Update
This commit is contained in:
parent
9975cd0e5a
commit
00babc1c42
22
thue-morse.v
22
thue-morse.v
|
@ -846,12 +846,13 @@ Require Import BinPosDef.
|
||||||
|
|
||||||
|
|
||||||
(* Autre construction de la suite, ici n est le nombre de termes *)
|
(* Autre construction de la suite, ici n est le nombre de termes *)
|
||||||
Fixpoint tm_bin (n: nat) : list bool :=
|
(* la construction se fait à l'envers *)
|
||||||
|
Fixpoint tm_bin_rev (n: nat) : list bool :=
|
||||||
match n with
|
match n with
|
||||||
| 0 => nil
|
| 0 => nil
|
||||||
| S n' => let t := tm_bin n' in
|
| S n' => let t := tm_bin_rev n' in
|
||||||
let m := Pos.of_nat n' in
|
let m := Pos.of_nat n' in
|
||||||
(xorb (hd false t)
|
(xorb (hd true t)
|
||||||
(odd (Pos.size_nat
|
(odd (Pos.size_nat
|
||||||
match Pos.lxor m (Pos.pred m) with
|
match Pos.lxor m (Pos.pred m) with
|
||||||
| N0 => BinNums.xH
|
| N0 => BinNums.xH
|
||||||
|
@ -859,6 +860,21 @@ Fixpoint tm_bin (n: nat) : list bool :=
|
||||||
end))) :: t
|
end))) :: t
|
||||||
end.
|
end.
|
||||||
|
|
||||||
|
Fixpoint tm_bin (n: nat) : list bool :=
|
||||||
|
match n with
|
||||||
|
| 0 => nil
|
||||||
|
| S n' => let t := tm_bin n' in
|
||||||
|
let m := Pos.of_nat n' in
|
||||||
|
t ++ [ xorb (last t true)
|
||||||
|
(odd (Pos.size_nat
|
||||||
|
match Pos.lxor m (Pos.pred m) with
|
||||||
|
| N0 => BinNums.xH
|
||||||
|
| Npos(p) => p
|
||||||
|
end)) ]
|
||||||
|
end.
|
||||||
|
|
||||||
|
Compute tm_bin 16 = tm_step 4.
|
||||||
|
|
||||||
|
|
||||||
Theorem tm_step_consecutive : forall (n : nat) (l1 l2 : list bool) (b1 b2 : bool),
|
Theorem tm_step_consecutive : forall (n : nat) (l1 l2 : list bool) (b1 b2 : bool),
|
||||||
tm_step n = l1 ++ b1 :: b2 :: l2 ->
|
tm_step n = l1 ++ b1 :: b2 :: l2 ->
|
||||||
|
|
Loading…
Reference in New Issue
Block a user