A FIBONACCI ANALOGUE OF THE TWO’S COMPLEMENT NUMERATION SYSTEM

. Using the classic two’s complement notation of signed integers, the fundamental arithmetic operations of addition, subtraction, and multiplication are identical to those for unsigned binary numbers. We introduce a Fibonacci-equivalent of the two’s complement notation and we show that addition in this numeration system can be performed by a deterministic finite-state transducer. The result is based on the Berstel adder, which performs addition of the usual Fibonacci representations of nonnegative integers and for which we provide a new constructive proof. Moreover, we characterize the Fibonacci-equivalent of the two’s complement notation as an increasing bijection between Z and a particular language.


Introduction
A nonnegative integer can be written as a sum of powers of 2, which gives rise to its binary representation over the alphabet Σ = {0, 1}.Binary representations can be added with a standard algorithm, starting from the least significant digit and transferring a carry at each step.Provided that the representations differ in length, the shorter one is padded with a prefix of leading zeroes, as in the following example: 11 01011 +17 10001 28 11100 Two's complement numeration system.Among all the ways to generalize this approach to Z is the two's complement notation; see [Knu98, §4.1].In the two's complement representation of integers, the value of a binary word The value val 2c (w) is congruent modulo 2 k to the value of w as an unsigned integer.The righthand side of Equation (1) can be simplified to −w k−1 2 k−1 + k−2 i=0 w i 2 i , which is commonly used.However, as we will see shortly, Equation (1) in the unsimplified form lends itself to a straightforward generalization using the Fibonacci numbers.It can be seen that for every w ∈ Σ * , val 2c (00w) = val 2c (0w) and val 2c (11w) = val 2c (1w).Thus 0 and 1 are neutral prefixes which can be used to pad the representations of nonnegative and negative numbers, respectively, keeping the two's complement value invariant.For every n ∈ Z there exists a unique word w ∈ Σ + \ (00Σ * ∪ 11Σ * ) such that n = val 2c (w).The word w is called the two's complement representation of the integer n and we denote it by rep 2c (n).
In the two's complement notation the fundamental arithmetic operations of addition, subtraction, and multiplication are identical to those for unsigned binary representations.To illustrate this, we perform the addition of the representations shown previously, this time interpreting them in the two's complement notation.The first word has the same value val 2c (01011) = 2 3 + 2 1 + 2 0 = 11, whereas the second word evaluates as val 2c (10001) = −2 4 + 2 0 = −15.We compute: 11 01011 −15 10001 −4 11100 The value of the resulting word is val 2c (11100) = −2 4 + 2 3 + 2 2 = −4, which confirms that the computation is correct.Notice that the negative integer −4 has a shorter two's complement representation rep 2c (−4) = 100, which no longer contains the neutral prefix.
Fibonacci numeration system.Integers can also be expressed in other numeration systems [Lot02,§7], see also [Fra85,FS96,FS10].A typical example uses the Fibonacci numbers instead of the powers of 2. Let (F n ) n≥0 be the Fibonacci sequence defined by the recurrence relation F n = F n−1 + F n−2 , for all n ≥ 2, and the initial conditions F 0 = 1, F 1 = 2, following a convention for the Fibonacci numeration system F [Fro88].In this numeration system, the value of a binary word w A result attributed to Zeckendorf [Lek52,Day60,Car68,Zec72] states that for every nonnegative integer n there exists a unique binary word w ∈ Σ * \ (Σ * 11Σ * ∪ 0Σ * ) such that n = val F (w).Note that this result appeared earlier in a more general form in the Ostrowski's work [Ost22].In other words, every nonnegative integer can be uniquely represented as a sum of nonconsecutive distinct Fibonacci numbers.For example, we have 20 = 13 + 5 + 2 = F 5 + F 3 + F 1 = val F (101010).The unique word w ∈ Σ * \ (Σ * 11Σ * ∪ 0Σ * ) such that n = val F (w) is denoted by rep F (n); see Table 1.We refer to this unique word rep F (n) as to the Fibonacci representation of n.Note that the empty word is the Fibonacci representation of the integer 0 and it is denoted by ε.One way to extend the Fibonacci numeration system to all integers is to use Fibonacci numbers with negative indices.In [Bun92], it was proved that every integer n whether positive, negative, or zero, can be uniquely written as a sum of nonconsecutive distinct Fibonacci numbers F i where i < −2.Let us stress that in this work, we use F 0 = 1 and F 1 = 2, so that F −1 = 1, F −2 = 0, F −3 = 1, F −4 = −1, F −5 = 2, F −6 = −3 and F −i = (−1) i+1 F i−4 .This system is called the negaFibonacci number system in [Knu11, §7.1.3],where it is used to navigate efficiently in a pentagrid within the hyperbolic plane.
The addition of integers (including negative integers) based on Fibonacci numbers was considered in [AUFP13], where a bit sign is appended to the Fibonacci representations.The first bit indicates the sign; more precisely, 0 means nonnegative, 1 indicates nonpositive and the integer zero has two representations.Problems arise when adding integers with opposite signs because the sign of the result depends on which number has the greater magnitude.
A Fibonacci analogue of the two's complement.An analog of the two's complement numeration system can be obtained by using Fibonacci numbers instead of powers of 2 in Equation (1).This numeration system can be defined by the map val , we show that for every n ∈ Z there exists a unique odd-length word Table 2.The Fibonacci complement numeration system Fc.
The numeration system Fc was discovered while studying a particular aperiodic set of 16 Wang tiles [LL21].A valid tiling of the plane by the Wang tiles is produced by a specific automaton related to the numeration system Fc.More precisely, this automaton takes the Fibonacci complement representation of a position (n, m) ∈ Z 2 as an input and it returns the tile to place at position (n, m) as an output.The numeration system Fc appears naturally in this context because it is related to the Fibonacci substitution [LL23], which follows from Theorem B proved in Section 5.
Addition in the Fibonacci numeration system F. Let us recall that, following [Ber86], the addition of Fibonacci representations can be performed in terms of a Mealy machine.
A Mealy machine M is a labeled directed graph whose vertices are called states and edges are called transitions [Lin12, Appendix A].The transitions are labeled by pairs a/b of letters.The first letter a ∈ A is the input symbol and the second letter b ∈ B is the output symbol.The empty word ε is sometimes included in B. For every state s and every letter a, there is at most one transition starting from the state s with the input symbol a.One distinguished state is called the initial state.
A machine M computes a function M : be two words of length k ∈ N over the input and output alphabets.The word y is the output of x under the machine M if and only if there is a sequence {s i } 0≤i≤k of k + 1 states of M such that s 0 is the initial state and for every i with 0 ≤ i < k, there is a transition from s i to s i+1 labeled by x i /y i .The output word y is denoted by M (x).The last state s k is denoted by M last (x) and an extra output word depending on the last state is denoted by M ↓ (x).
A 10-state Mealy machine B, called the adder by Berstel [Ber86,p. 22], reading from left to right is shown in Figure 1.The states are pairs made of a binary word of length 3 and an additional integer whose meaning is explained in Section 6.The Berstel adder B has the property that for every input u ∈ {0, 1, 2} * , u has the same value in the Fibonacci numeration system as the concatenation of the output word B(u) ∈ {0, 1} * with the three-letter binary word B ↓ (u) ∈ {000, 001, 010, 100, 101}, which depends only on the final state reached when reading u:  Main result.The goal of this contribution is to prove that the Fibonacci complement numeration system Fc behaves like the two's complement in terms of addition of integers.
More precisely, addition of integers in the numeration system Fc can be performed as the usual addition of nonnegative integers in the Fibonacci numeration system F.This result suggests a possible generalization to other numeration systems, starting with simple Parry numeration systems which include the Fibonacci numeration system; see [Rén57,Par64,FS10,MPR19].This remains to be explored.
Structure of the article.In Section 2, we recall a few preliminary results on the numeration system Fc for Z.In Section 3, we recall the addition of Fibonacci representations on N. In Section 4, we prove Theorem A. In Section 5, we show that the map rep F c defining the Fibonacci complement numeration system is characterized by the fact of being an increasing bijection for some total order defined on a particular language; see Theorem B. In Section 6, we provide a constructive proof that the Berstel adder B performs addition of nonnegative integers.
Acknowledgments.The first author is partially funded by France's ANR CODYS (ANR-18-CE40-0007) and ANR IZES (ANR-22-CE40-0011).The second author acknowledges support from Barrande Fellowship Programme and from Grant Agency of Czech Technical University in Prague, through the project SGS20/183/OHK4/3T/14.We are thankful to Christiane Frougny and Jacques Sakarovitch for helpful discussions on numeration systems.We thank Julien Cassaigne to make us realize that Equations (1) and (2) are really analogous before simplification (this is not the case after simplification).We thank Jeffrey Shallit for making us aware of [MSS16], as well as earlier references [Ost22, Lek52] about Zeckendorf's theorem.We would like to thank the referees for their in-depth reading of the article and their many valuable comments.

A Fibonacci Complement Numeration System for Z
In this section, we present the Fibonacci complement numeration system, which is defined by the value map val F c : Σ * → Z given in Equation (2), where Σ = {0, 1}.
The first observation to make on this value map is given in the next lemma.
Lemma 2.1.For every word w ∈ Σ * , we have Thus 00 or 10 can be used to pad words without changing their value, leading to the following definition.
Representations in the numeration system Fc of integers n ∈ [−13, 21) are shown in Figure 2. The neutral prefixes correspond to two loops on the vertices 0 and −1.Note the following relation between the Fibonacci numeration system and the Fibonacci complement numeration system: for every nonempty word The following proposition enables us to define representations of integers in the Fibonacci complement numeration system.Its proof is in Section 5.
The inverse of the map val F c defines the Fibonacci complement numeration system.Definition 2.4 (Fibonacci complement numeration system).For every n ∈ Z, we let The Fibonacci complement (Fc) numeration system is illustrated in Figure 2. Note that this numeration system was denoted by the letter F in [LL21].Herein, we made the choice of denoting the Fibonacci complement numeration system by Fc and the Fibonacci numeration system by F.
The neutral prefix can be used to pad words so that they all have the same length.
Definition 2.5 (Pad function).Let u, v ∈ Σ(ΣΣ) * be two words of odd length.We define where k = max{|u|, |v|} and pad k (w) = p w 1 2 (k−|w|) w for every w ∈ {u, v} where p w is the neutral prefix of the word w.Note that k − |w| is always even since u and v are of odd length.
Padding allows us to represent coordinates in Z d in dimension d ≥ 1.Here we consider the case d = 2. Padding also allows us to define the sum of words.
Definition 2.7 (Sum of two words).Let Σ = {0, 1} and u, v ∈ Σ * .Then we define sum : As the sum of two binary words is over the alphabet {0, 1, 2}, we extend the maps val F and val F c naturally to the alphabet {0, 1, 2}.The following lemma is analogous to Lemma 2.1.

Addition of Fibonacci representations on N
In this section, we recall how the addition of Fibonacci representations of nonnegative integers can be performed with the Berstel adder, a finite-state deterministic transducer proposed by Berstel in [Ber86,p. 22].
We first present the formal definition of Mealy machine as the Berstel adder is an instance of it.A detailed introduction to automata theory and finite-state transducers can be found for instance in [Sak09,Lin12].A Mealy machine with output is a 7-tuple M = (S, S 0 , A, B, δ, η, φ), where S is a finite set of states, S 0 ∈ S is the initial state, A is the input alphabet, B is the output alphabet, δ : S × A → S is the transition function mapping pairs of a state and an input symbol to the corresponding next state, η : S × A → B is the output function mapping pairs of a state and an input symbol to the corresponding output symbol and φ : S → B * is the function mapping each state to an extra output word over the alphabet B. The empty word ε is sometimes included in B. Reading a word u = u 0 • • • u k−1 ∈ A * for some k ∈ N, the Mealy machine M moves between states s i ∈ S, with s 0 = S 0 and s i+1 = δ(s i , u i ), outputting sequentially one letter and an extra output word depending on the last state is M ↓ (u) = φ(M last (u)).In this article, the extra output word needs to be concatenated after the output word M (u).
Theorem 3.1.[Ber86] The Berstel adder B has the property that for every input u ∈ {0, 1, 2} * , it outputs a word B(u) • B ↓ (u) ∈ {0, 1} * with same value for the Fibonacci numeration system: The behavior of the Berstel adder on all ternary words of length ≤ 3 is listed in Table 3. Below, we illustrate Theorem 3.1 on two examples.
Example 3.2.Feeding the Berstel adder B in Figure 1 with the word u = 2220121 gives 000.0 Example 3.3.Here is how Berstel adder can be used to compute the sum 33 + 25.First, we express 33 and 25 by their Fibonacci representation (in general, if representations do not have the same length, the shorter one is padded with leading 0's).Then, we add them digit by digit to obtain a ternary word in {0, 1, 2} * : Reading from left to right and giving the word u = 2010202 as input to the Berstel adder (see Figure 1), we obtain the following path from the initial state 000.0: 000.0 Therefore, the output word is B(u) = 0010110 and the path ends in state B last (u) = 100.6.
Removing the last digit (6) of the last state, which we can ignore for now (see Definition 6.6 for details), we obtain the three-letter extra output word B ↓ (u) = 100.Concatenating the two words gives 0010110 • 100, which has the correct Fibonacci value 33+25=58 val F (B(u) • B ↓ (u)) = val F (0010110 • 100) = 3 + 8 + 13 + 34 = 58; however, it is not the normal representation as it contains leading 0s and consecutive 1s.Indeed, it is known [Ber86,Sak87,Fro91] that no single right-to-left and no single left-to-right transducer can normalize all words u ∈ {0, 1, 2} k .
In Section 6, we provide a constructive proof of Theorem 3.1 based on linear algebra and identities involving Fibonacci numbers.We use Theorem 3.1 to prove Theorem A.

Proof of Theorem A
Taking the Berstel adder B as a base, we derive another Mealy machine by adding a new initial state start and extending the maps δ B and η B in the following way: and a ∈ {0, 1, 2}; 000.0, if q = start and a = 0; 101.7, if q = start and a = 1; 100.6, if q = start and a = 2, The Mealy machine T is illustrated in Figure 1 with solid and dashed edges.Before proving the theorem, we need two lemmas.The first lemma shows that the first letter of the output word depends only on the first letter of the input word.
Proof.The proof is based on Figure 1.We observe that (i) φ T (000.0)starts with 0 and η T (000.Since the strongly connected component of the Mealy machine T corresponds to the Berstel adder B, we have the following relations between the two machines. Proof.In this proof, it is appropriate to introduce the notation M s = (S, s, A, B, δ, η, φ) to denote the Mealy machine with a chosen initial state s ∈ S. In particular, M s satisfies the condition that for every u, v ∈ A * where t = M s last (u).Moreover, since the strongly connected component of the Mealy machine T corresponds to the Berstel adder B and both machines have the same function φ T = φ B , the following equations hold for every q ∈ Q and every u ∈ {0, 1, 2} * : (6) B q (u) = T q (u), B q last (u) = T q last (u) and B q ↓ (u) = T q ↓ (u).Using Equations (4), ( 5) and ( 6) and the particular form of the machines B and T , we have Also, we have and similarly, We can now prove the main result.
If a = 0, we have If a = 2, we proceed similarly to the previous case and we have In analogy with Example 3.2, we illustrate Theorem A in the following example.See also the behavior of T on all ternary words of length ≤ 3 in Table 3. Example 4.4.Here is how the Mealy machine T can be used to compute the sum −1 + (−9).First, we express (−1) and (−9) by their Fibonacci complement representation and we pad the shorter word with an appropriate neutral prefix (00's if it starts with 0 or 10's if it starts with 1, see Definition 2.2) so that they have the same length.Then, we add them digit by digit to obtain a ternary word in {0, 1, 2} * : Therefore, the output word is T (u) = 100110 and the path ends in state T last (u) = 100.6.
Removing the last digit (6) of the last state, we obtain the three-letter extra output word T ↓ (u) = 100.Concatenating the two words gives 100110•100, which is a Fibonacci complement representation of the sum −1 + (−9).We confirm that its Fibonacci complement value is correct:

A characterization by increasing bijection
The goal of this section is to show that the numeration system rep F c : Z → D is characterized by the fact of being an increasing map with respect to some total order on its codomain D = Σ(ΣΣ) * \ (Σ * 11Σ * ∪ 000Σ * ∪ 101Σ * ) where Σ = {0, 1}; see Theorem B. The proof of the theorem is based on similar results for the maps val F and rep F which we start with.5.1.Ordering in the Fibonacci numeration system for N.In this short section, we recall known facts about the Fibonacci numeration system also known as the Zeckendorf numeration system.We recall that rep F is increasing with respect to the radix order.For completeness, we also provide the proofs of the results.
Let k ≥ 3 and let it hold for all integers up to k − 1 that |w| = if and only if which is a contradiction.(Surjectivity): Let S = Σ * \ (Σ * 11Σ * ∪ 0Σ * ).We proceed by induction on n ∈ N. If n = 0 then w = ε ∈ S fulfills val F (w) = n.Let n ≥ 1. Induction hypothesis: for every m ∈ N such that m < n there exists w ∈ S such that val F (w) = m.There exists a unique k ∈ N such that The map rep F is defined as the inverse map val −1 F .It corresponds to the Zeckendorf numeration system [Zec72].
We can now show that val F is an increasing map.Recall that the radix order is a total order on Σ * such that, for every u, v ∈ Σ * , u < rad v if and only if |u| < |v| or |u| = |v| and u < lex v.
Proof.It follows from Lemma 5.2 that val F is a bijection.We show that it is increasing.
Let u, v ∈ Σ * \ (Σ * 11Σ * ∪ 0Σ * ) be such that u < rad v.If |u| < |v| then by Lemma 5.1, val F (u) < val F (v). Assume that |u| = |v|.Then u < lex v. Then there exists p ∈ Σ * such that u = p0s, v = p1t for some t, s 5.2.Proof of Proposition 2.3.The following lemma allows us to determine whether val F c (w) is nonnegative or negative based only on the first digit of w.
Lemma 5.4.For every word w First we prove the implication from left to right for both cases.
(1) Let ≤ k − 2 be the unique integer such that w = v1s for some v ∈ 0 + and s ∈ Σ .Then 0 The converse follows from the following observation.Let X = X 1 ∪X 2 be such that (1) w ∈ 0Σ 2k if and only if (3) Also, w = 1 if and only if val F c (w) = −1.
Proof.Let w ∈ D and k ∈ N.
We can now prove that val F c is a bijection D → Z.
Proof of Proposition 2.3.(Injectivity): Let u, v ∈ D be such that val F c (u) = val F c (v).By Lemma 5.5, u and v have the same length k ∈ N and the same first digit d ∈ {0, 1}.Using Equation (3), val Assume n ≥ 0. Then there exists a unique k ∈ N such that Assume n < −1.Then there exists a unique integer k ≥ 1 such that

5.3.
Ordering in the Fibonacci complement numeration system.We define the reversed-radix order as a total order such that u < rev v if and only if |u| > |v| or |u| = |v| and u < lex v.We define a total order on Σ * as follows.
Definition 5.6 (total order ≺).For every u, v ∈ Σ * , we define u ≺ v if and only if The map val F c is an increasing bijection with respect to this total order on D.
• Assume that u, v ∈ dΣ * for some d ∈ {0, 1} and |u| = |v|.In this case, we have u < lex v. From Lemma 5.3, val F (u) < val F (v). Since u and v start with the same digit we have val We can now prove that rep F c is characterized by the fact of being an increasing bijection.
The map rep F c : Z → D is the inverse of the map val F c , which by Lemma 5.7 is an increasing bijection D → Z with respect to the order ≺.Hence rep F c : Z → D is an increasing bijection with respect to the order ≺.Moreover rep F c (0) = 0. Let f : Z → D be an increasing bijection with respect to the order ≺ such that f (0) = 0.There is a unique increasing bijection (Z, <) to (D, ≺) such that 0 → 0. Thus f = rep F c .
Theorem B allows us to prove that rep F c , the Fibonacci analogue of the two's complement, is the same as the Dumont-Thomas numeration system associated to one of the two biinfinite periodic points of the Fibonacci substitution [LL23].

A constructive proof of Theorem 3.1
The Berstel adder B was given in [Ber86] without proof.A proof of Theorem 3.1 was provided later in [Fro99, Corollary 4] based on the numeration system in the real base τ = 1+ √ 5 2 , see also [Fro88,Fro91].Another proof follows from [BR10, §2.3.2.3]where it is proved that normalization in the real base β is computable by a finite automaton when β is a Pisot number.Alternatively, the correctness of the Berstel adder can be proved with a decision procedure; see [MSS16, Remark 2.1, p. 41].
The goal of this section is to provide a new proof of Theorem 3.1 based solely on linear algebra and identities involving Fibonacci numbers.The proof is constructive.More precisely, we show that there is a canonical way of mapping a ternary word to a binary word having the same Fibonacci value, provided the choice has been made for shorter words; see Lemma 6.3 and Proposition 6.4.Then we introduce an equivalence relation on ternary words (see Definition 6.5), describing the behavior of the translation to binary words.We show that there are finitely many equivalence classes, which proves that the computation can be performed by a finite-state transducer.
Proof.Let u ∈ {0, 1, 2} * .We carry out the proof of existence and uniqueness by induction on the length of u.If |u| = 0, then w u = ε is the empty word, the only word of length 0. Also s u = 000 has the property that val F (u) = val F (ε) = 0 = val F (000) = val F (w u s u ).Suppose that s u ∈ S also satisfies the equality val F (u) = val F (w u s u ).We have implies that s u = 000 = s u .
(Induction hypothesis).Let k ∈ N. Suppose that for every u ∈ {0, 1, 2} * , with |u| ≤ k, there exist a unique word w u ∈ {0, 1} * , with |w u | = |u|, and a unique word s u ∈ S such that w u is a prefix of w ua for every a ∈ {0, 1, 2} and val (Existence).From Lemma 6.3, there exist a unique b ∈ {0, 1} and a unique t ∈ S such that val F (ua) = val F (w u bt).Therefore, we let w ua = w u b and s ua = t.It holds that w u is a prefix of w ua and val F (ua) = val F (w ua s ua ).
(Uniqueness).Suppose that w ua , w ua ∈ {0, 1} k+1 and s ua , s ua ∈ S satisfy the hypothesis.We want to show that w ua = w ua and s ua = s ua .From the hypothesis, w u is a prefix of w ua and of w ua , thus let c, c ∈ {0, 1} be such that w ua = w u c and w ua = w u c .By the definition of w ua , w ua , s ua and s ua , we have that val F (w u cs ua ) = val F (w ua s ua ) = val F (ua) = val F (w ua s ua ) = val F (w u c s ua ).
From Lemma 6.3, there exist a unique b ∈ {0, 1} and a unique t ∈ S such that val F (ua) = val F (w u bt).Therefore, we have c = c and s ua = s ua .We conclude that w ua = w u c = w u c = w ua and s ua = s ua .
The existence and uniqueness of the map λ follows from the existence and uniqueness of the map w.
The values of w u , λ ua and s ua and are shown in the table below for small words u ∈ {0, 1, 2} * and a ∈ {0, 1, 2}.It can be observed that some words behave the same, for example u = 1 and v = 22.This is formalized in the following definition.Definition 6.5 (equivalence relation).Let u, v ∈ {0, 1, 2} * .We say that u and v are equivalent, denoted by u ≡ v, if s u = s v and λ ua = λ va and s ua = s va for every a ∈ {0, 1, 2}.
The equivalence relation can be characterized by a map computing the defect in the translation of the word u0 into w u 0000.Its value allows us to prove that two ternary words behave the same.This ends the proof as the machine Z is equivalent to the Berstel adder B reproduced in Figure 1.

Figure 1 .
Figure 1.The Berstel adder B is a 10-state Mealy machine with 30 transitions illustrated as solid edges with initial state 000.0.The Mealy machine T is obtained by adding a new state start that replaces 000.0 as initial state and adding three additional transitions shown with dashed edges.

Figure 2 .
Figure 2. The language rep F c (Z) can be represented as a tree of integers where each word rep F c (n) labels the path from the node start to the node n ∈ Z.The labeling of the nodes by integers illustrates a breadth-first traversal of the upper and lower half of the tree.
Note that the resulting word u = 2010202 coincides with the one in Example 3.3, where we show properties of addition in Fibonacci numeration system.Reading from left to right and giving the word u = 2010202 as input to the Mealy machine T (see Figure1), we obtain the following path from the initial state start: start

u
• a w u λ ua s ua ε •

Figure 3 .
Figure3.The edges represent the directed labeled graph G, which can be folded (after merging equivalent states) into the Mealy machine Z equivalent to the Berstel adder B. A vertex reached from a path u has an ellipse shape if and only if u is minimal with respect to the radix order within the equivalence class [u] ≡ and has a rectangle shape if u ≡ v for some word v < rad u.

Table 1 .
The Fibonacci numeration system F.
This unique word is denoted by rep F c (n); see Proposition 2.3.The Fibonacci complement numeration system Fc is defined by the map rep F c : Z → {0, 1} * whose values for small integers are shown in Table2.Note that the numeration system Fc extends naturally to Z d with an appropriate padding of shorter words; see Definition 2.6.
This result is stated as our Theorem 3.1 below.Computations performed with the Berstel adder are shown in Example 3.2 and Example 3.3.
The result is based on the Berstel adder B to which three transitions

Table 3 .
The table lists for every ternary word u ∈ {0, 1, 2} + of length ≤ 3 the output B(u) • B ↓ (u) ∈ {0, 1} * under the Berstel adder B and the output T (u) • T ↓ (u) ∈ {0, 1} * under the modified Berstel adder T .The other columns illustrate that B preserves the value in the Fibonacci numeration system whereas T preserves the value in the Fibonacci complement numeration system.