Rule:Ternarithmetic
@RULE Ternarithmetic
This is another circuitry rule by islptng, designed to make a SUBLEQ machine easily. It uses balanced ternary to simplify circuits.
Unlike other rules which focus on logic, This rule is based on arithmetics.
@NAMES
0 vacuum 1 wire 2 T signal 3 0 signal 4 1 signal
5 T memory cell 6 0 memory cell 7 1 memory cell 8 T inhibited memory 9 0 inhibited memory
10 1 inhibited memory 11 Read signal 12 Write signal
13 Marker - 14 Marker 0 15 Marker +
16 Negate gate 17 Sign gate 18 0 Transformer 19 Rotate gate 20 0 Filter
@TABLE n_states: 21 neighborhood: Moore symmetries: rotate4
var a1 = {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20} var a2 = a1 var a3 = a1 var a4 = a1 var a5 = a1 var a6 = a1 var a7 = a1 var a8 = a1
var s1 = {1,5,6,7,8,9,10,16,17,18,19,20} var s2 = s1 var s3 = s1 var s4 = s1
var p1 = {0,2,3,4,11,12} var p2 = p1 var p3 = p1 var p4 = p1 var p5 = p1 var d1 = {2,3,4} var z1 = {2,3,4,11} var c1 = {2,3,4,11,12}
var j1 = {0,13,14,15} var q1 = {13,14,15}
var m1 = {5,6,7} var t1 = {8,9,10}
- To write signal
2,12, 0,p1,s1, 1,s2, 0, 0,12 3,12, 0,p1,s1, 1,s2, 0, 0,12 4,12, 0,p1,s1, 1,s2, 0, 0,12
- To read signal
0, 2, 0,11, 0,p1,s1, 1,s2,11 0, 3, 0,11, 0,p1,s1, 1,s2,11 0, 4, 0,11, 0,p1,s1, 1,s2,11
- Write
0, 2, 0, 0, 0,p1,a1,m1,s1, 0 0, 3, 0, 0, 0,p1,a1,m1,s1, 0 0, 4, 0, 0, 0,p1,a1,m1,s1, 0
m1,s1, 2, 0, 0,a1,a2,a3,a4, 8 m1,s1, 3, 0, 0,a1,a2,a3,a4, 9 m1,s1, 4, 0, 0,a1,a2,a3,a4,10
8,12,p1,a1,a2,a3,a4,s1, 0, 5 9,12,p1,a1,a2,a3,a4,s1, 0, 6
10,12,p1,a1,a2,a3,a4,s1, 0, 7
0,12, 0, 0,a1,a2,a3, 1,t1, 0
- Read
5,s1,11, 0,p1,a1,a2,a3,a4, 8 6,s1,11, 0,p1,a1,a2,a3,a4, 9 7,s1,11, 0,p1,a1,a2,a3,a4,10
z1, 0, 0, 0, 0,p1,a1, 8,s1, 2 z1, 0, 0, 0, 0,p1,a1, 9,s1, 3 z1, 0, 0, 0, 0,p1,a1,10,s1, 4
8,s1, 0,z1,p1,a1,a2,a3,a4, 5 9,s1, 0,z1,p1,a1,a2,a3,a4, 6
10,s1, 0,z1,p1,a1,a2,a3,a4, 7
0,11, 0,20, 0,p1,a1, 1,s1, 0
- Switch
0,11, 0,13, 0,p2,a1, 1,s1, 2 0,11, 0,14, 0,p2,a1, 1,s1, 3 0,11, 0,15, 0,p2,a1, 1,s1, 4 0,p1, 0,13, 0,p2,a1, 1,s1, 0 0,p1, 0,15, 0,p2,a1, 1,s1, 0
q1, 0, 1, 1, 2, 0 a1,a2,a3,13 q1, 0, 1, 1, 3, 0 a1,a2,a3,14 q1, 0, 1, 1, 4, 0 a1,a2,a3,15
- 1-input Gates
- 16 -> NOT / NEG
p1, 2,a1,a2,a3,a4,s1,16,s2, 4 p1, 3,a1,a2,a3,a4,s1,16,s2, 3 p1, 4,a1,a2,a3,a4,s1,16,s2, 2
- 18 -> Zeroify
p1, 2,a1,a2,a3,a4,s1,18,s2, 3 p1, 3,a1,a2,a3,a4,s1,18,s2, 3 p1, 4,a1,a2,a3,a4,s1,18,s2, 3
- 19 -> Rotate
p1, 2,a1,a2,a3,a4,s1,19,s2, 3 p1, 3,a1,a2,a3,a4,s1,19,s2, 4 p1, 4,a1,a2,a3,a4,s1,19,s2, 2
- 20 -> 0 Filter
p1, 2,a1,a2,a3,a4,s1,20,s2, 0 p1, 3,a1,a2,a3,a4,s1,20,s2, 3 p1, 4,a1,a2,a3,a4,s1,20,s2, 0
- 17 -> Sign
j1, 2,a1,a2,a3,a4,s1,17,s2,13
0, 3,a1,a2,a3,a4,s1,17,s2,14
j1, 4,a1,a2,a3,a4,s1,17,s2,15 13, 0,a1,a2,a3,a4,s1,17,s2, 2 14, 0,a1,a2,a3,a4,s1,17,s2, 3 15, 0,a1,a2,a3,a4,s1,17,s2, 4
- Addition
p1, 2,p2,p3, 1, 2, 0,13, 1, 3 13,p1, 0, 1, 2,p2, 2, 0,p3,13 p1, 2,p2,p3, 1, 2, 0, 0, 1, 4
0,p1, 0, 1, 2,p2, 2, 0,p3,13
p1, 2,p2,p3, 1, 2, 0,15, 1, 2 15,p1, 0, 1, 2,p2, 2, 0,p3, 0 p1, 2,p2,p3, 1, 3, 0,13, 1, 4 13,p1, 0, 1, 2,p2, 3, 0,p3,13 p1, 2,p2,p3, 1, 3, 0, 0, 1, 2
0,p1, 0, 1, 2,p2, 3, 0,p3, 0
p1, 2,p2,p3, 1, 3, 0,15, 1, 3 15,p1, 0, 1, 2,p2, 3, 0,p3, 0 p1, 2,p2,p3, 1, 4, 0,13, 1, 2 13,p1, 0, 1, 2,p2, 4, 0,p3, 0 p1, 2,p2,p3, 1, 4, 0, 0, 1, 3
0,p1, 0, 1, 2,p2, 4, 0,p3, 0
p1, 2,p2,p3, 1, 4, 0,15, 1, 4 15,p1, 0, 1, 2,p2, 4, 0,p3, 0 p1, 3,p2,p3, 1, 2, 0,13, 1, 4 13,p1, 0, 1, 3,p2, 2, 0,p3,13 p1, 3,p2,p3, 1, 2, 0, 0, 1, 2
0,p1, 0, 1, 3,p2, 2, 0,p3, 0
p1, 3,p2,p3, 1, 2, 0,15, 1, 3 15,p1, 0, 1, 3,p2, 2, 0,p3, 0 p1, 3,p2,p3, 1, 3, 0,13, 1, 2 13,p1, 0, 1, 3,p2, 3, 0,p3, 0 p1, 3,p2,p3, 1, 3, 0, 0, 1, 3
0,p1, 0, 1, 3,p2, 3, 0,p3, 0
p1, 3,p2,p3, 1, 3, 0,15, 1, 4 15,p1, 0, 1, 3,p2, 3, 0,p3, 0 p1, 3,p2,p3, 1, 4, 0,13, 1, 3 13,p1, 0, 1, 3,p2, 4, 0,p3, 0 p1, 3,p2,p3, 1, 4, 0, 0, 1, 4
0,p1, 0, 1, 3,p2, 4, 0,p3, 0
p1, 3,p2,p3, 1, 4, 0,15, 1, 2 15,p1, 0, 1, 3,p2, 4, 0,p3,15 p1, 4,p2,p3, 1, 2, 0,13, 1, 2 13,p1, 0, 1, 4,p2, 2, 0,p3, 0 p1, 4,p2,p3, 1, 2, 0, 0, 1, 3
0,p1, 0, 1, 4,p2, 2, 0,p3, 0
p1, 4,p2,p3, 1, 2, 0,15, 1, 4 15,p1, 0, 1, 4,p2, 2, 0,p3, 0 p1, 4,p2,p3, 1, 3, 0,13, 1, 3 13,p1, 0, 1, 4,p2, 3, 0,p3, 0 p1, 4,p2,p3, 1, 3, 0, 0, 1, 4
0,p1, 0, 1, 4,p2, 3, 0,p3, 0
p1, 4,p2,p3, 1, 3, 0,15, 1, 2 15,p1, 0, 1, 4,p2, 3, 0,p3,15 p1, 4,p2,p3, 1, 4, 0,13, 1, 4 13,p1, 0, 1, 4,p2, 4, 0,p3, 0 p1, 4,p2,p3, 1, 4, 0, 0, 1, 2
0,p1, 0, 1, 4,p2, 4, 0,p3,15
p1, 4,p2,p3, 1, 4, 0,15, 1, 3 15,p1, 0, 1, 4,p2, 4, 0,p3,15
p1, 0,p2,p3, 1, 0,p4,j1, 1, 0 p1,p2,p3,p4, 1, 0,p5,j1, 1,p2 p1, 0,p2,p3, 1,p4,p5,j1, 1,p4
13,a1, 0, 1,p1,p2,p3,a2,a3, 0 15,a1, 0, 1,p1,p2,p3,a2,a3, 0
- Crossover
0,p1, 1, 0, 1, 0, 1, 0, 1,p1 0, 1,p1,p2,s1, 1,p3, 0,c1,13
13, 1,p1,p2,s1, 1,p3, 0, 0, 0 p1,p2,13, 1,p3,p4,s1, 1, 0,p2 p1,p2, 1,13, 1,p3, 1, 0, 1,p2 p1,p2,p3, 1,13,p4, 0, 1,s1,p2
0, 1,p1,p2,s1, 1,c1, 0,p3,15
15, 1,p1,p2,s1, 1, 0, 0,p3, 0 p1,p2, 1, 0, 1,p3, 1,15, 1,p2
- Merge
p1,p2,p3,p4,s1,s2,s3, 0,s4,p2
- Default Propagation
p1,p2,a1,p3,a2,a3,a4,s1,s2,p2 p1,p2,p3,a1,p4,a3,a4,s1,s2,p2 p1,p2,a1,p3,a2,a3,s1,a4,s2,p2 p1,p2,p3,a1,p4,a3,s1,a4,s2,p2 p1,p2,a1,p3,a2,a3,s1,s2,a4,p2 p1,p2,p3,a1,p4,a3,s1,s2,a4,p2
@COLORS
1 255 0 0
2 255 255 255
3 255 255 255
4 255 255 255
5 255 0 255
6 255 0 255
7 255 0 255
8 128 0 128
9 128 0 128
10 128 0 128
11 0 255 0
12 0 255 0
13 255 128 128
14 255 128 128
15 255 128 128
16 255 128 0
17 255 128 0
18 255 128 0
19 255 128 0
20 255 128 0
@ICONS XPM "7 140 2 1" ". c #000000" "m c #FFFFFF"
"mmmmmmm" "mmmmmmm" "mmmmmmm" "mmmmmmm" "mmmmmmm" "mmmmmmm" "mmmmmmm"
"mmmmmmm" "mmmmmmm" "mmmmmmm" "m.....m" "mmmmmmm" "mmmmmmm" "mmmmmmm"
"mmmmmmm" "mmmmmmm" "mm...mm" "mm.m.mm" "mm...mm" "mmmmmmm" "mmmmmmm"
"mmmmmmm" "mmm.mmm" "mmm.mmm" "mmm.mmm" "mmm.mmm" "mmm.mmm" "mmmmmmm"
"mmmmmmm" "mmmmmmm" "mmmmmmm" "m.....m" "mmmmmmm" "mmmmmmm" "mmmmmmm"
"mmmmmmm" "mmmmmmm" "mm...mm" "mm.m.mm" "mm...mm" "mmmmmmm" "mmmmmmm"
"mmmmmmm" "mmm.mmm" "mmm.mmm" "mmm.mmm" "mmm.mmm" "mmm.mmm" "mmmmmmm"
"mmmmmmm" "mmmmmmm" "mmmmmmm" "m.....m" "mmmmmmm" "mmmmmmm" "mmmmmmm"
"mmmmmmm" "mmmmmmm" "mm...mm" "mm.m.mm" "mm...mm" "mmmmmmm" "mmmmmmm"
"mmmmmmm" "mmm.mmm" "mmm.mmm" "mmm.mmm" "mmm.mmm" "mmm.mmm" "mmmmmmm"
"mmmmmmm" "mm..mmm" "mmmm.mm" "mmm.mmm" "mmmmmmm" "mmm.mmm" "mmmmmmm"
"mmmmmmm" "m.mmmmm" "mm.mmmm" "mmm.mmm" "mmmm.mm" "mmmmm.m" "mmmmmmm"
"mmmmmmm"
"mmmmmmm"
"mmmmmmm"
"m.....m"
"mmmmmmm"
"mmmmmmm"
"mmmmmmm"
"mmmmmmm" "mmmmmmm" "mm...mm" "mm.m.mm" "mm...mm" "mmmmmmm" "mmmmmmm"
"mmmmmmm" "mmm.mmm" "mmm.mmm" "mmm.mmm" "mmm.mmm" "mmm.mmm" "mmmmmmm"
"mmmmmmm" "mmmmmmm" "m.....m" "mmmmm.m" "mmmmm.m" "mmmmmmm" "mmmmmmm"
"mmmmmmm" "mmm.mmm" "mm...mm" "mmm.mmm" "mmmmmmm" "mm...mm" "mmmmmmm"
"mmmmmmm" "m.mmmmm" "mm...mm" "mm.m.mm" "mm...mm" "mmmmm.m" "mmmmmmm"
"mmmmmmm" "mm...mm" "m.mmm.m" "m.mmm.m" "m.mm..m" "mm.mm.m" "mmmmmmm"
"mmmmmmm" "mm.m.mm" "m.....m" "mm.m.mm" "m.....m" "mm.m.mm" "mmmmmmm"