[noise] Generating patterns, and ss tokens
Justin Cormack
justin at specialbusservice.com
Tue Jun 19 16:18:01 PDT 2018
I wrote a quick program to generate all the standard and deferred
patterns from a short set of rules based roughly on [1]
https://github.com/justincormack/noise-gen
You should be able to run it with go installed with
go get github.com/justincormack/noise-gen
~/go/bin/noise-gen
It seems to generate the same patterns as the standard ones (I havent
fully exhaustively checked yet) with the caveat that it adds ss where
possible.
In the standard patterns this means having an ss in eg:
IX:
-> e, s
<- e, ee, se, s, es, ss
XK:
-> e, es
<- e, ee
-> s, se, ss
The rule that would generate the same patterns appears to be to drop
an ss if it would be the last token (as well as in all deferred
patterns).
[1] https://moderncrypto.org/mail-archive/noise/2018/001701.html
Patterns generated listed below:
NN:
-> e
<- e, ee
NX:
-> e
<- e, ee, s, es
NK:
-> e, es
<- e, ee
XN:
-> e
<- e, ee
-> s, se
IN:
-> e, s
<- e, ee, se
XX:
-> e
<- e, ee, s, es
-> s, se, ss
IX:
-> e, s
<- e, ee, se, s, es, ss
XK:
-> e, es
<- e, ee
-> s, se, ss
IK:
-> e, es, s, ss
<- e, ee, se
KN:
-> e
<- e, ee, se
KX:
-> e
<- e, ee, se, s, es, ss
KK:
-> e, es, ss
<- e, ee, se
NX:
-> e
<- e, ee, s, es
NX1:
-> e
<- e, ee, s
-> es
NK:
-> e, es
<- e, ee
NK1:
-> e
<- e, ee, es
XN:
-> e
<- e, ee
-> s, se
X1N:
-> e
<- e, ee
-> s
<- se
IN:
-> e, s
<- e, ee, se
I1N:
-> e, s
<- e, ee
-> se
XX:
-> e
<- e, ee, s, es
-> s, se, ss
X1X:
-> e
<- e, ee, s, es
-> s, ss
<- se
XX1:
-> e
<- e, ee, s
-> es, s, se, ss
X1X1:
-> e
<- e, ee, s
-> es, s, ss
<- se
IX:
-> e, s
<- e, ee, se, s, es, ss
I1X:
-> e, s
<- e, ee, s, es, ss
-> se
I1X1:
-> e, s
<- e, ee, s, ss
-> se, es
XK:
-> e, es
<- e, ee
-> s, se, ss
X1K:
-> e, es
<- e, ee
-> s, ss
<- se
XK1:
-> e
<- e, ee, es
-> s, se, ss
X1K1:
-> e
<- e, ee, es
-> s, ss
<- se
IK:
-> e, es, s, ss
<- e, ee, se
I1K:
-> e, es, s, ss
<- e, ee
-> se
I1K1:
-> e, s, ss
<- e, ee, es
-> se
KN:
-> e
<- e, ee, se
K1N:
-> e
<- e, ee
-> se
KX:
-> e
<- e, ee, se, s, es, ss
K1X:
-> e
<- e, ee, s, es, ss
-> se
KX1:
-> e
<- e, ee, se, s, ss
-> es
K1X1:
-> e
<- e, ee, s, ss
-> se, es
KK:
-> e, es, ss
<- e, ee, se
K1K:
-> e, es, ss
<- e, ee
-> se
KK1:
-> e, ss
<- e, ee, se, es
K1K1:
-> e, ss
<- e, ee, es
-> se
More information about the Noise
mailing list