4
大学数学基礎解説
文献あり

A Combinatorial Interpretation of @apu_yokai's k-Lucas Number Identity

61
0

Introduction

The Fibonacci numbers admit a straight-forward generalisation by modifying the recurrence relation Fn+1=Fn1+Fn
to fn+1=fnk+1++fn, that is, we replace the sum of two previous terms by the sum of k previous terms.
Another way to write this recursion is via matrix multiplication:

(fnk+2fn+1)=(01000111)MkT:=(fnk+1fn)

This matrix Mk has characteristic polynomial xkxk11, and by Cayley-Hamilton we get the identity Mk=Mk1++M+I, which encodes the recurrence relation of the fi.
Furthermore the polynomial has k roots a1,...,ak, which are the eigenvalues of Mk.

An important companion of the Fibonacci numbers are the Lucas numbers Ln, which can be seen as the trace of powers of M2:
Ln=trace(M2n)
Accordingly we can define the k-Lucas numbers to be n:=trace(Mkn)=a1n+...+akn.

For small n the k-Lucas numbers have a surprisingly simple form: n=2n1 for 1nk.
This has been observed by @apu_yokai and proven in a collaborative effort on Twitter and Mathlog.
The proof is short and uses Newton's identities.
For this article I want to go in a different direction and ask: Why 2n1? I found a combinatorial answer which I will present two steps:

  1. View the matrix Mk as a directed graph
  2. Build finite deterministic automata from this directed graph which together produce all non-zero binary numbers.

The Graph

The Matrix M=Mk is defined by

Me1=e2,,Mek1=ek and Mek=e1++ek.

This matrix is an adjacency matrix for the directed graph on k nodes 1,,5 with edges
12,,k1k and k1,,kk.

Here is an example for k=5:
Graph for k = 5 Graph for k = 5

The powers of the adjacency matrix have a very useful interpretation, as explained in Wikipedia :
The (i,j) entry in Mn counts the number of paths of length n to go from j to i.

In particular, the trace counts the number of loops of length n starting from any vertex.
(Caveat: two loops are considered different if their starting vertices are different, i.e. 12312312)
The question now becomes: How many loops of length n exist in this graph?

The Automaton

From the graph we obtain a machine which produces non-zero binary numbers by labeling the edges:

LABEL[ii+1]=0,(i=1,...,k1)
LABEL[ki]=1,(i=1,...,k)

Automaton for k = 5 Automaton for k = 5

To produce the binary number 00101 we use the loop 30405140513

More examples:

00001: 10203040511

1101: 515140515

00100: 30405110203

I think you can show by induction that every non-zero binary number of length n is produced by a unique loop of length n (1nk).
The number of loops is therefore the number of non-zero binary numbers on n bits, which is 2n1.

参考文献

投稿日:2021126
OptHub AI Competition

この記事を高評価した人

高評価したユーザはいません

この記事に送られたバッジ

バッジはありません。
バッチを贈って投稿者を応援しよう

バッチを贈ると投稿者に現金やAmazonのギフトカードが還元されます。

投稿者

私のことは気にしないでください。🙇‍♂️

コメント

他の人のコメント

コメントはありません。
読み込み中...
読み込み中