O funcție ternară în teoria sistemelor funcționale și logica ternară este o funcție de tip , unde este o mulțime ternară , și este un întreg nenegativ , care se numește aritatea sau localitatea funcției.
Elementele mulțimii - semnele digitale 0, 1 și 2 pot fi interpretate ca logic „fals”, „necunoscut” și „adevărat”, în cazul general, semnificația lor poate fi orice. Elementele se numesc vectori ternari . În cazul lui n = 0, funcția ternară se transformă într-o constantă ternară .
Fiecare funcție ternară a ariității n este complet definită prin stabilirea valorilor sale pe domeniul său de definiție, adică pe toți vectorii ternari de lungime n . Numărul acestor vectori este 3 n . Deoarece pe fiecare vector o funcție cu trei valori poate lua una din trei valori diferite, numărul tuturor funcțiilor ternare n -are este 3 (3 n ) (sunt necesare paranteze, deoarece notația 3 3 n nu are proprietatea de asociativitate și 3 (3 2 ) = 3 9 \u003d 19683 și (3 3 ) 2 \u003d 27 2 \u003d 729).
De exemplu, există 3 (3 0 ) = 3 funcții logice ternare nule - constante 0, 1 și 2; 3 (3 1 ) = 27 funcții logice ternare unare, 3 (3 2 ) = 19683 funcții logice ternare binare etc.
În unele dispozitive ternare, toate cele trei stări sunt aceleași și nu sunt definite nici valori logice, nici aritmetice [1] , iar direcția deplasării, fie la dreapta (în sensul acelor de ceasornic), fie la stânga (în sens invers acelor de ceasornic), nu este definită, dar în acest sens la nivel este deja posibil să se fixeze una dintre cele două direcții de rotație și să se distingă deja rotația la stânga de rotația la dreapta.
La al doilea nivel, trei valori pot fi atribuite celor trei stări, dar fără încă valori aritmetice obligatorii, de exemplu, un triunghi, un pătrat și un cerc. La al doilea nivel, devine posibilă legarea valorilor booleene („fals”, „nedefinit”, „adevărat”), de exemplu:
„triunghi” = „fals”,
„pătrat” = „nedefinit”,
„ cerc” = „adevărat”,
deși în cazul general legarea poate fi diferită.
La al doilea nivel, valorile logice nu au valori aritmetice.
La al treilea nivel, trei stări sunt atribuite valori aritmetice: 0, 1 și 2, sau -1, 0 și +1. La al treilea nivel, valorile logice au în mod condiționat și valori aritmetice. Cea mai comună legare a valorilor aritmetice nu este compatibilă cu legarea obișnuită în logica binară:
„fals” = -1,
„nedefinit” = 0,
„adevărat” = +1,
deși, în general, legarea valorilor aritmetice poate fi diferită, de exemplu, legarea:
„fals” = 0,
„nedefinit” = 2,
„adevărat” = 1, este
compatibil cu legarea convențională în logica binară și corespunde rotației din stânga în legarea obișnuită a unei secvențe de aritmetică valori (0,1,2).
În alte dispozitive ternare, cele trei stări diferă, de exemplu, în polaritatea tensiunii și nu sunt echivalente [2] . În aceste dispozitive, legarea la nivelurile de tensiune și la valorile aritmetice și logice este foarte puternică:
"tensiune negativă" \u003d "-1" \u003d "-" \u003d "fals",
"tensiune aproape de zero" \u003d "0" \u003d "nedefinit",
"tensiune pozitivă" = "+1" = "+" = "adevărat",
dar sunt posibile alte legături în aceste dispozitive.
Logica cuaternară, logica octală și alte logici care sunt multipli de 4 sunt mai potrivite pentru a lucra cu a treia valoare booleană - „nedefinit” decât logica ternară.
Notație pentru funcții ternareÎn general, ca într-un caz de brevet, denumirea poate fi orice, dar este necesar să se indice ce reprezintă fiecare element din denumire.
Un sistem unificat de notație pentru funcțiile ternare nu s-a dezvoltat încă. Diferiți autori folosesc sisteme diferite de notație pentru funcțiile ternare. Un exemplu de diferite notații pentru funcții ternare unare de către diferiți autori este dat în Tabelul 3 și în subsecțiunea „Notație” în același loc.
Când lucrați cu funcții ternare și binare în același timp, trebuie să specificați trinitate sau binar. Acest lucru se poate face cu literele T (Ternar) și B (Binar). De exemplu, FT este o funcție ternară și FB este o funcție binară.
Deoarece funcțiile pot avea un număr diferit de argumente (aritate), este necesar să se precizeze aritatea funcțiilor. Întrucât funcțiile unare, binare, trinare etc. există atât în sistemele binare, cât și ternare și mai mult -are, desemnarea sistemului trebuie să precedă desemnarea arității. De exemplu, FT1 este o funcție unară ternară, FT2 este o funcție binară ternară, FT3 este o funcție ternară ternară.
Deoarece jumătate din numerele diferitelor funcții ternare simetrice și ternare asimetrice sunt aceleași, este necesar să se indice dacă numărul funcției este simetric sau nu. Acest lucru se poate face cu literele S (Simetric) și N (Nesimetric). De exemplu, FT1S este o funcție unară ternară cu un număr simetric, FT1N este o funcție unară ternară cu un număr nesimetric și FT2B1N este o funcție mixtă cu două argumente ternare, un argument binar și un număr nesimetric.
După ce puteți pune numărul funcției. De exemplu, FT1N7 este o funcție unară ternară cu număr asimetric „7”.
Deoarece unele numere diferite în formă ternară și zecimală sunt aceleași, de exemplu, 22 ternare este egal cu 8 zecimale, atunci după număr trebuie să puneți un index care indică baza sistemului numeric. De exemplu, FB2N22 10 , FT2S22 3 , FT2N22 10 sunt trei funcții diferite.
Numele funcțiilor ternareCa și în logica binară , o funcție ternară poate să nu aibă propriul nume în cuvinte, atunci este numită printr-o desemnare numerică sau aceeași funcție poate avea unul sau mai multe nume proprii în cuvinte, în funcție de aplicație.
Corespondențe de notație ternară asimetrică și ternară simetricăÎn notația simetrică ternară, valorile aritmetice -1, 0 și +1 sunt foarte strâns legate de notația logică (−1, 0, +1) sau (−, 0, +). În a doua notație, 1 nu este prezent în mod explicit, dar este implicit implicit.
În notația ternară nesimetrică, alta decât 0 și +1, valorile aritmetice -1, 0 și +1 sunt mai puțin puternic asociate cu notația logică (0,1,2).
Din tabelul 4 rezultă că:
F1TN0 = F1TS-13 … F1TN13 = F1TS0 … F1TN26 = F1TS+13sau
F1TS-13 = F1TN0 … F1TS0 = F1TN13 … F1TS+13 = F1TN26,adică numerele ternare pe trei biți ale funcțiilor ternare unare cu codificare simetrică sunt deplasate în raport cu numerele funcțiilor ternare unare cu
codificare asimetrică prin
Codarea asimetrică ternară este mai convenabilă în aplicațiile ternare generale. Codificarea simetrică ternară este mai convenabilă atunci când lucrați cu numere simetrice ternare. Indiferent de sistemul de codare, funcțiile în sine efectuează aceeași operație cu operanzi (argumente), chiar și cu sisteme de codare nemenționate mai sus.
Conversia numerelor ternare asimetrice în numere ternare simetriceNumerele ternare asimetrice cu codificare (-1,0,+1)=(0,1,2) sunt relativ ușor de convertit în numere ternare simetrice cu codificare (-1,0,+1)=(2,0,1) folosind următorul algoritm [3] (Eroarea lui Depman I. Ya.: Pentru a scrie numere în sisteme cu trei cifre, inclusiv sisteme numerice ternare, sunt necesare trei caractere. În notația lui Depman, al treilea caracter este unitatea subliniată - " 1 ", dar al treilea caracter poate fi atât „2” cât și „i” și „7” și „N” și „n” și orice alt semn decât semnele „0” și „1”.):
1. Începând de la cel mai mic cifra semnificativă a numărului ternar dezechilibrat cu codificare ( -1,0,+1)=(0,1,2):
2. Dacă numărul din cifra curentă este mai mare decât 1 (2 sau 3), atunci se adaugă 1 la următoarea cifră (rămâne 2, dar deja ca denumire -1); dacă numărul din cifra curentă este 3, atunci cifra curentă este setată la 0.
3. Treceți la următoarea cifră cea mai mare.
Pentru numerele ternare asimetrice negative, conversia se face din modulul numărului ternar asimetric și, ca urmare, în toate cifrele, se înlocuiește „1” cu „2”, iar „2” cu „1” folosind funcția ternară simetrică. Swap12(X).
În total există cele mai simple funcții ternare nulare (constante ternare).
Cu codificare în sistemul numeric ternar nesimetric :
Desemnare | Nume | Sens |
---|---|---|
FT0N0 | Identitate booleană zero | 0 |
FT0N1 | Unitate de identitate logică | unu |
FT0N2 | Logice identice două | 2 |
Cu codificare în sistemul numeric simetric ternar:
Desemnare | Nume | Sens |
---|---|---|
FT0S-1 | Identic minus unu | -unu |
FT0S0 | Identitate zero | 0 |
FT0S1 | Identitate plus unu | unu |
În total, există cele mai simple funcții ternare unare (cu o singură intrare, cu un argument, cu un operand, un loc), unde m este numărul de ieșiri, aritatea de ieșire a funcției. Pentru funcții unare (cu o singură intrare) funcții ternare cu ieșire unară m=1 și numărul lor este .
Numărul celor mai simple funcții ternare unare este egal cu numărul de plasări cu repetări ( selecții cu returnare) pentru k=n=3:
Deoarece există funcții mai complexe care dau același rezultat ca și cele mai simple funcții ternare unare cu intrarea unui trit, numărul de funcții ternare mai complexe cu următoarele rezultate dintr-un trit este teoretic infinit.
Tabelul 1. Rezultatele acțiunii celor mai simple funcții ternare unare atunci când trei valori ale cifrei ternare (trit) sunt aplicate succesiv la intrare: 0, 1 și 2.
Într-un sistem de codificare ternar asimetric (-1,0 ,+1) = (0,1,2) :
Tabelul 3.
y\x | 2 | unu | 0 | titlu | desemnare |
---|---|---|---|---|---|
FT1N0=FT1S-13 | 0 | 0 | 0 | minim identic, zero identic, trecere la 0 | F000(X) = 0 |
FT1N1=FT1S-12 | 0 | 0 | unu | emularea ternară a funcției binare NOT 2 , adaptor la binar | F001(X) = NU 2 (X) |
FT1N2=FT1S-11 | 0 | 0 | 2 | convertor în binar | F002(X) |
FT1N3=FT1S-10 | 0 | unu | 0 | emularea ternară a funcției binare DA 2 , adaptor la binar | F010(X) = DA 2 (X) |
FT1N4=FT1S-9 | 0 | unu | unu | emularea ternară a funcției binare „identic 1”, adaptor la binar | F011(X) = 1 2 |
FT1N5=FT1S-8 | 0 | unu | 2 | schimb de 0 și 2, schimb de două valori inferioare la codificare (-1,0,+1)=(2,0,1), schimb de două valori extreme ("inversie Lukasiewicz") la codificare (- 1,0,+1) =(0,1,2) | F1TN5 10 (X) = F012 3 (X) = Schimbare02(X) |
FT1N6=FT1S-7 | 0 | 2 | 0 | convertor în binar | F020(X) |
FT1N7=FT1S-6 | 0 | 2 | unu | rotiți la dreapta (înainte, sus) 1 pas (+1 pas, +1/3 rotire, +120°), rotiți la dreapta (înainte, sus) 1 pas (+1 pas, +1/3 rotire, +120°), Rotire în sus de Steve Grubb [4] , Ciclu sus [5] | F021(X) = RotF(x) = RotU(x) = RotR(x) = CycleShiftU(x) |
FT1N8=FT1S-5 | 0 | 2 | 2 | convertor în binar | FT1N8 10 (X) = F022 3 (X) |
FT1N9=FT1S-4 | unu | 0 | 0 | deplasare neciclică la stânga (înapoi, jos) cu limita 0, deplasare neciclică la stânga (înapoi, în jos) cu −1 cu limita 0, Decrement neciclic cu limita 0, Shift Down de Steve Grubb [6] | F100(X) = ShiftD(x) = ShiftL(X) |
FT1N10=FT1S-3 | unu | 0 | unu | convertor în binar | F101(X) |
FT1N11=FT1S-2 | unu | 0 | 2 | rotiți la stânga (în spate, în jos) 1 pas (-1 pas, −1/3 tură, −120°), rotiți la stânga (înapoi, în jos) 1 pas (-1 pas, −1/3 rotire, −120°), Rotate Down de Steve Grubb [7] , Cicle Down [5] | F102(X) = RotB(x) = RotD(x) = RotL(x) = CycleShiftD(x) |
FT1N12=FT1S-1 | unu | unu | 0 | convertor în binar | F110(X) |
FT1N13=FT1S0 | unu | unu | unu | mijloc identic, trecere la 1, unitate identică | F111(X) = 1 |
FT1N14=FT1S+1 | unu | unu | 2 | convertor în binar | FT1N14 10 (X) = F112 3 (X) |
FT1N15=FT1S+2 | unu | 2 | 0 | schimb 1 și 2, schimb a două valori extreme ("inversie Lukasiewicz") la codificare (-1,0,+1)=(2,0,1), schimb a două valori cele mai mari la codificare (-1 ,0,+1) =(0,1,2) | FT1N15 10 (X)=F120 3 (X)=Swap12(X) |
FT1N16=FT1S+3 | unu | 2 | unu | convertor în binar | F121(X) |
FT1N17=FT1S+4 | unu | 2 | 2 | convertor în binar | FT1N17 10 (X) = F122 3 (X) |
FT1N18=FT1S+5 | 2 | 0 | 0 | convertor în binar | F200(X) |
FT1N19=FT1S+6 | 2 | 0 | unu | schimb de 0 și 1, schimb de două valori mai mari la codificare (-1,0,+1)=(2,0,1), schimb de două valori inferioare la codificare (-1,0,+1) )=(0,1, 2) | FT1N19 10 (X) = F201 3 (X) = Schimbare01(X) |
FT1N20=FT1S+7 | 2 | 0 | 2 | convertor în binar | F202(X) |
FT1N21=FT1S+8 | 2 | unu | 0 | rotație zero, repetor, Da, Buffer1, Delay1 (linie de întârziere pentru 1 întârziere tipică), funcție de identitate | F210(X) = Da(x) = Rot0(x) = CycleShift0(X) = x |
FT1N22=FT1S+9 | 2 | unu | unu | convertor în binar | F211(X) |
FT1N23=FT1S+10 | 2 | unu | 2 | convertor în binar | F212(X) |
FT1N24=FT1S+11 | 2 | 2 | 0 | convertor în binar | F220(X) |
FT1N25=FT1S+12 | 2 | 2 | unu | deplasare neciclică la dreapta (înainte, în sus) cu limita 2, deplasare neciclică la dreapta (înainte, în sus) cu +1 cu limita 2, creștere neciclică cu limita 2, deplasare în sus de Steve Grubb [8] | F221(X) = ShiftU(x) |
FT1N26=FT1S+13 | 2 | 2 | 2 | maxim identic, trecere la 2, identic doi | F222(X) = 2 |
Tabelul arată că atunci când valorile de la 0 la 2 sunt introduse secvenţial la intrarea funcţiei, se formează un şir la ieşirea funcţiei, de exemplu, „022” 3 , care este atât numărul funcţiei, cât şi şirul. a acțiunii sale, adică atât numărul funcției, cât și șirul acțiunii sale sunt conținute în funcția însăși. Această proprietate poate fi utilă dacă este imposibil să citiți numărul funcției de pe corpul cipului (șters, pictat, nu este disponibil).
Tabelul arată că triturile de ieșire, după acțiunea funcțiilor, în 21 de cazuri din 27 își pierd valoarea de trei valori și în 18 cazuri devin cu două valori (adaptoare la logica binară), iar în 3 cazuri devin monovaloare. constantele (adaptoare la constante) (FT1N0, FT1N13 și FT1N26 ), și doar în 6 cazuri (trei schimburi, două rotații și un repetor) rămân cu trei cifre (FT1N5, FT1N7, FT1N11, FT1N15, FT1N19 și FT1N21).
Toate cele 27 de operații (funcții) ternare sunt efectuate de o ALU ternară unară cu ieșire unară (1Trit-1Trit) într-un sistem de trei biți cu o unitate de elemente logice ternare, un instantaneu al modelului căruia în simulatorul logic Atanua este prezentate în figura din dreapta și sunt scrise într-un flip-flop ternar cu logica de control corespunzătoare.
NotațiePentru a desemna funcții ternare unare, orice trei semne ternare (3 3 \u003d 27), 4/3 semn zecimal (9 (4/3) \u003d 27) sau un semn douăzeci și șapte sunt suficiente, prin urmare, deoarece un număr infinit de astfel de semne sunt posibile, un număr infinit de notații pentru funcții ternare unare. Din acest set de denumiri, desemnările numerice bazate pe rezultatele acțiunii funcțiilor sunt desemnări naturale .
Denumirile numerice pot fi superscript postfix, minuscule și indice și prefix superscript, minuscule și indice, în timp ce pentru desemnările superscript și indice trebuie să tastați cinci caractere pentru deschidere și șase caractere pentru paranteze de închidere, astfel încât desemnările digitale cu litere mici cu paranteze obișnuite sunt mai simple.
Grabb [10] folosește șase caractere pentru desemnare: ∪, ∩, ↘, ↗, A, A , dintre care 5 sunt greu de tastat la tastatură. Două cifre hexazecimale pot exprima până la 6 2 = 36 de funcții, totuși Grabb folosește patru cifre pentru a desemna funcțiile −7, −3, 3 și 7, ceea ce este relativ redundant (6 4 = 1296).
Mouftah folosește 16 caractere pentru desemnare: ¬, ¬ , ⌐, ⌐ , ┘, ┘ , └, └ , ⊼, ⊽, 0, +, (,), A, A , dintre care 11 sunt greu de tastat la tastatură. Două cifre hexazecimale pot exprima până la 11 2 =256 funcții, totuși pentru funcțiile -6 și -2 Mouftah folosește 11 cifre, ceea ce este relativ redundant (16 11 =17592186044416).
Yoeli desemnează decodoarele pozitive -1, 0 și +1 cu două și trei superscripte greu de tastat, fără a descrie decodoarele pozitive cu două 0-uri, decodoarele zero cu două 1-uri și două -1-uri, decodoarele negative cu două 0-uri și două 1. .
Într-un sistem ternar simetric:
Tabelul 4.
y\x | unu | 0 | i | titlu | desemnare | F# [5] | Grubb | Moufthah | Titlu după Mouftah/Yoeli | [5] | Diferență : 101 | Maslov S. P. [11] |
---|---|---|---|---|---|---|---|---|---|---|---|---|
FT1S-13=FT1N0 | i | i | i | adaptor la -1, identitate -1, identitate minimă | Fiii(X) = −1 | 111 | ieșire întotdeauna 1 | |||||
FT1S-12=FT1N1 | i | i | 0 | comutați în jos, deplasați cu -1 | Fii0(X) | ii0 | ↘A = Shift Down | ¬┘A | -L, M3 | |||
FT1S-11=FT1N2 | i | i | unu | convertor în binar, detector −1 cu adevărat=1 fals=-1 | Fii1(X) | ii1 | ∩↗ A | └┘A = ┘A = ┘A = ┘┘A | x 1 (Yoeli), decodificare-1 | |||
FT1S-10=FT1N3 | i | 0 | i | convertor în binar, înlocuind 1 cu −1 | Fi0i(X) | i0i | ↘∩A | |||||
FT1S-9=FT1N4 | i | 0 | 0 | convertor în binar | Fi00(X) | i00 | ↘↗A | ⌐A | diodă inversă | M8 | ||
FT1S-8=FT1N5 | i | 0 | unu | schimbă +1 și −1, „Inversarea Lukasiewicz”, „Inversare” de Steve Grubb [12] , Complement(F210) de Paul Falstad [13] | Fi01(X) = "NOTL(X)" = "NotL(X)" = "InvL(X)" = "Not0(X)" = Schimbare+1/-1 | 10 1 | schimb 1/1 , A | A | Invertor ternar simplu | \'/ | ||
FT1S-7=FT1N6 | i | unu | i | convertor în binar, detector 0 cu adevărat=1 fals=-1 | Fi1i(X) | i1i | ∩↗∪ A | ┘(A + A ) | x 0 (Yoeli), decodificare-0 | |||
FT1S-6=FT1N7 | i | unu | 0 | rotație înainte 1/3 de tură (+120°) | Fi10(X) = RotF(X) = RotU(X) = RotRight(x) | 01 1 | rotiți în sus, ∩A |
(└ A ⊼ 0)⊼(┘ A ) — poarta de ciclu invers | ciclu sus | /// | ||
FT1S-5=FT1N8 | i | unu | unu | adaptor la binar, F220 conform lui Paul Falstad [14] , „Inversie Lukasiewicz” de la detector +1 | Fi11(X) | i11 | ∪↘ A | ┘└A = ┘A = └└A | ||||
FT1S-4=FT1N9 | 0 | i | i | deplasare neciclică în jos, deplasare neciclică cu −1 | F0ii(X) | 0ii | ↘ A | ⌐└A | Invertor ternar negativ cu împământare | M7 | ||
FT1S-3=FT1N10 | 0 | i | 0 | convertor în binar | F0i0(X) | 0i0 | ∪↗∪ A | |||||
FT1S-2=FT1N11 | 0 | i | unu | rotație inversă 1/3 de tură (−120°) | F0i1(X) = RotB(x) = RotD(X) = RotLeft(x) | 1 1 0 | rotiți în jos, ∪A |
(┘ A ⊽ 0)⊽(└ A ) — poarta de ciclism | ciclu în jos | \\\ | ||
FT1S-1=FT1N12 | 0 | 0 | i | adaptor la binar, înlocuind +1 cu 0 | F00i(X) | 00i | ∪↗ A | ⌐└A = ⌐A | -R, M4 | |||
FT1S0=FT1N13 | 0 | 0 | 0 | adaptor la 0, identic 0, identic mijloc | F000(X) = 0 | 000 | iese întotdeauna 0 | |||||
FT1S+1=FT1N14 | 0 | 0 | unu | F211 de Paul Falstad [15] , adaptor la binar | F001(X) | 001 | ↗↘A | ¬A | diodă directă | M5 | ||
FT1S+2=FT1N15 | 0 | unu | i | schimbă 0 și 1 | F01i(X) = "NU0(X)" = "NU-1(X)" | 1 10 | schimb 0/1 | schimb 0/1 | '/\ | |||
FT1S+3=FT1N16 | 0 | unu | 0 | convertor în binar | F010(X) | 010 | ∩↘∩A | |||||
FT1S+4=FT1N17 | 0 | unu | unu | F221 de Paul Falstad [16] , adaptor la binar | F011(X) | 011 | ⌐└A | +L, M2 | ||||
FT1S+5=FT1N18 | unu | i | i | convertor în binar, detector 1 cu true=1 false=-1 | F1ii(X) | 1ii | ∩↗A | └A | Invertor ternar negativ (Mouftah), x i (Yoeli), decodare-i | |||
FT1S+6=FT1N19 | unu | i | 0 | schimbă 0 și −1 | F1i0(X) = „NU2(X)” = „NU+1(x)” | 0 1 1 | schimb 1/0 _ | schimb 1/0 _ | /\' | |||
FT1S+7=FT1N20 | unu | i | unu | adaptor la binar, „inversie Lukasiewicz” de la detectorul 0 | F1i1(X) | 1i1 | ∪↘∩A | |||||
FT1S+8=FT1N21 | unu | 0 | i | rotație zero, repetor, Da, funcție de identitate, linie de întârziere, semn de număr | F10i(X) = Sgn (X) | 101 _ | tampon A |
A | Tampon | |||
FT1S+9=FT1N22 | unu | 0 | 0 | convertor în binar | F100(X) | 100 | ∩↘ A | ¬ A | +R, M1 | |||
FT1S+10=FT1N23 | unu | 0 | unu | convertor în binar | F101(X) | 101 | ↗∪ A | |||||
FT1S+11=FT1N24 | unu | unu | i | adaptor la binar, „inversie Lukasiewicz” de la detector −1 | F11i(X) | 11i | ∪↘A | ┘A | Invertor ternar pozitiv | |||
FT1S+12=FT1N25 | unu | unu | 0 | deplasare neciclică în sus, deplasare neciclică +1 | F110(X) | 110 | ↗A = Shift Up,↗ A | ¬┘A | Invertor ternar pozitiv cu împământare | M6 | ||
FT1S+13=FT1N26 | unu | unu | unu | adaptor la +1, identic +1, identic maxim | F111(X) = 1 | 111 | ieșire întotdeauna 1 |
Semnele „i”, „ 1 ”, „7” și „2” reprezintă „-1”.
Tabelul arată că la codificarea simetrică, funcțiile sunt aceleași ca și la codarea asimetrică, doar numerele funcției sunt deplasate cu −13, iar la înlocuirea semnelor (-1,0,+1) cu semnele (0,1,2 ) se obține un tabel de funcții ternare unare într-un sistem ternar asimetric cu corespondența (-1,0,+1) = (0,1,2).
Dacă semnul „i” este înlocuit cu semnul „2”, atunci numerele funcției vor diferi de numerele funcției din tabelul cu codificare asimetrică doar prin „rotirea cu 1 înainte” a numărului asimetric, adică prin funcție FT1N7 (RotF) din numărul asimetric.
În consecință, pentru a obține numărul funcției în tabel cu codare asimetrică, în numărul cu codare simetrică, trebuie să înlocuiți semnul „i” cu semnul „2” și să luați funcția ternară „rotație cu 1 înapoi” ( FT1N11, RotB) din fiecare dintre cifrele sale.
Repetitor logic ternar. Este cea mai simplă linie de întârziere .
Negația (inversiunea, răsturnarea, inversarea) Not (Inv) există doar în logica pare: binară, cuaternară, hexazecimală etc.
În logica ternară, în loc de negație (inversie, răsturnare, inversare) Not (Inv), există cinci funcții similare : trei schimburi - Swap și două rotații - Rot, care nu sunt asemănări exacte de negație (inversie), dar sunt un pic ca negația (inversie).
În logica octală, schimbarea a două valori pe un cerc octal schimbă doar două dintre cele opt valori și seamănă puțin cu o inversare binară. Patru deplasări ciclice cu 1 pas (Rot) pe un cerc octal fac o inversare completă a tuturor celor opt valori. Astfel, asemănarea aproape completă cu inversarea binară a lui Not (rotație cu 180 °) în logica octală este de 4 deplasări ciclice cu 1 pas (cu 45 °) la stânga sau la dreapta (RotateLeft și RotateRight). În mod similar, în logica ternară, asemănările inversării binare a lui Not sunt deplasări ciclice la stânga și la dreapta cu 1 pas (cu 120 °) (RotateLeft și RotateRight), și nu schimburi de doar două valori din toate trei (Swap ), cu singura diferență fiind că în logica ternară, din cauza pasului de 120°, nu există o asemenea similitudine a inversării binare a Not ca în logica octală și în alte logici pare.
Într-un moment în care nu se știa acest lucru, s-au dezvoltat nume eronate precum „inversia Lukasiewicz”, care, de fapt, este centrala celor trei schimburi - Swap + 1 / -1 și este mai puțin asemănătoare cu binarea Not inversion decât deplasările ciclice 1 pas la stânga și la dreapta (rotiți 120° la stânga și la dreapta, RotateLeft și RotateRight).
Schimburile sunt operațiuni unare care schimbă două dintre cele trei stări logice.
Spre deosebire de logica binară, în care există un singur schimb Swap0/+1 care coincide cu inversarea (negarea) lui Not, în logica ternară există trei schimburi [17] :
- FT1N19, FT1S+2, Swap0/+1 (schimb 0). și +1), ("NOT-1")
- FT1N15, FT1S-8, Swap+1/-1 (schimb +1 și -1), ("NOT0", "NOTL" - "Inversie Lukasiewicz")
- FT1N5 , FT1S+6, Swap0/-1 (schimba 0 și −1), ("NU+1")
Schimbul tradițional Swap+1/-1 (numit inversare sau adăugare, negație incompletă), care nu afectează starea „0” („necunoscut”), este numit în mod eronat „ negația lui Lukasiewicz ” („inversarea lui Lukasiewicz”). unele articole despre logica ternară, și notate ca „~Lx” („NLx”, „¬Lx”, „x’L”, „NOTL” sau „NOT0”). Funcția „inversie (negație) lui Lukasiewicz” este inclusă în logica lui Kleene . Logica lui Lukasiewicz și logica lui Kleene au fost studii timpurii ale funcțiilor ternare și nu au acoperit toate funcțiile ternare. Sunt submulțimi trunchiate ale mulțimii generale a celor mai simple funcții ternare.
În plus față de schimbul tradițional Swap+1/-1 (“inversie Lukasiewicz”), care menține starea 0 (“necunoscut”) neschimbată, mai există două operațiuni de schimb, care sunt desemnate ca Swap0/+1 (“NU- 1”) și Swap0/ -1 ("NU+1"). Primul păstrează starea -1 ("fals") neschimbată, iar al doilea păstrează +1 ("adevărat"):
Tabelul 5. (Acest tabel determină numărul de Swap-uri în sistemul de codificare ternar simetric.)
y\x | +1 | 0 | -unu | |
---|---|---|---|---|
FT1S+2 | 0 | +1 | -unu | Swap0/+1, „NOT-1”, schimb de două valori mai mari |
FT1S-8 | -unu | 0 | +1 | Schimbați + 1/-1, „NOT0”, „NOTL”, schimb de două valori extreme („Lukasiewicz inversare”) |
FT1S+6 | +1 | -unu | 0 | Schimbați 0/-1, „NU+1”, schimbați două valori mai mici |
Într-un sistem de codare asimetric ternar, există șase potriviri posibile cu un sistem de codare simetric ternar, dar numai două dintre cele șase potriviri sunt cele mai semnificative: cu semnul „-1” înlocuit cu „2” fără o deplasare ciclică înainte (în sus , dreapta) la +1 0,+1)=(2,0,1) și cu o deplasare ciclică înainte (sus, dreapta) cu +1 (-1,0,+1)=(0,1,2) .
Același tabel, dar cu notația (-1,0,+1)=(2,0,1) și enumerarea valorilor argumentului: 2, 0, 1):
y\x | unu | 0 | 2 | |
---|---|---|---|---|
FT1S+2 | 0 | unu | 2 | Swap01, schimb de două valori mari |
FT1S-8 | 2 | 0 | unu | Swap12, schimbând două extreme ("inversarea Lukasiewicz") |
FT1S+6 | unu | 2 | 0 | Swap02, schimb a două valori mai mici |
Același tabel într-un sistem de codare asimetric ternar fără deplasare, dar numai cu semnul „-1” înlocuit cu „2” (-1,0,+1)=(2,0,1), dar cu enumerarea valorile argumentului: 0, 1, 2 (acest tabel determină numărul de funcții din sistemul de codare asimetric ternar) (în acest tabel, „inversia Lukasiewicz” este deja un schimb de două valori cele mai mari și nu două valori extreme, ca în tabelele anterioare, precum și alte două funcții de schimb, dar, pentru o mai bună distincție între funcțiile de schimb, este mai bine să lăsați numele acțiunilor lor în sistemul de codificare ternar simetric):
y\x | 2 | unu | 0 | |
---|---|---|---|---|
FT1N19=FT1S+2 | 2 | 0 | unu | Swap01, schimb de două valori mari |
FT1N15=FT1S-8 | unu | 2 | 0 | Swap12, schimbând două extreme ("inversarea Lukasiewicz") |
FT1N5=FT1S+6 | 0 | unu | 2 | Swap02, schimb a două valori mai mici |
În tabelul din sistemul de codare asimetric ternar cu o deplasare cu RotR(X) (-1,0,+1)=(0,1,2), aceleași funcții din tabel se dovedesc a fi deplasate ciclic cu o linie , adică „inversia lui Lukasiewicz ” nu mai este FT1N15 (Swap12), ci FT1N5 (Swap02), alte două funcții Swap au fost, de asemenea, mutate:
y\x | 2 | unu | 0 | |
---|---|---|---|---|
FT1N15 | unu | 2 | 0 | Swap12 (schimbați două valori mari) |
FT1N5 | 0 | unu | 2 | Swap02 (schimb a două valori extreme), ("inversie Lukasiewicz") |
FT1N19 | 2 | 0 | unu | Swap01 (schimbați două valori mai mici) |
Graficul operațiunii Swap0/+1 ("NOT-1") este o muchie a unui triunghi cu tranziții în două sensuri de la 0 la +1 și înapoi.
Graficul de tranziție în operația Swap+1/-1 („inversia Lukasiewicz”) este o muchie a unui triunghi cu tranziții în două sensuri de la +1 la -1 și înapoi.
Graficul operației Swap0/-1 ("NU+1") este o muchie a unui triunghi cu tranziții în două sensuri de la 0 la -1 și înapoi.
Toate cele trei operații sunt liniare, unidimensionale, nu ies din linie în plan.
Legea schimbului dublu este valabilă pentru toate logicile cu mai multe valori.
Pentru toate cele trei schimburi, precum și pentru Swap0/+1(Swap01(X)) = X în logica binară , ecuațiile sunt valide:
Schimbare0/+1(Schimbare0/+1(X)) = X
Schimbare+1/-1(Schimbare+1/-1(X)) = X
Schimbare0/-1(Schimbare0/-1(X)) = X
În logica binară, rotația, negația, inversarea, inversarea și negația sunt aceleași și sunt exprimate printr-o singură operație de rotație cu 180 ° - un fel de „5 în 1” NU (X).
Asemănarea exactă a funcției binare NOT(X) există doar chiar și în logicile cu mai multe valori: cuaternar, hexazecimal, octal etc.
În logica ternară și mai semnificativă, rotația, negația, inversarea, inversarea și negația sunt funcții diferite și nu coincide.
În loc de o rotație de 180° (Nu) în logica binară, există două rotații de 120° în logica ternară: RotLeft (-120°) și RotRight (+120°).
Deoarece dispozitivele electromecanice (relee) și electronice (trepte de tranzistor) inversează faza cu 180 °, acestea sunt foarte potrivite pentru dispozitivele logice binare. În logica ternară, sunt necesare dispozitive care rotesc faza cu 120 °. Astfel de dispozitive sunt relativ ușor de executat mecanic, dar mai dificil de realizat electronic. Una dintre soluțiile la această problemă sunt dispozitivele realizate într-un sistem pe trei biți (3Bit BinaryCodedTernary, 3B BCT) de elemente logice ternare [18] .
În logica binară, există o lege a dublei rotații cu 1 pas (180°) într-o direcție (dublă negație):
Nu(Nu(x)) = x
Putregai(Putrecerea(x)) = x
Sensul de rotație nu este diferit. Datorită pasului de rotație de 180°, acesta ia exact poziția opusă pe cerc (negație, inversare, inversare și negație), deci Rot(x) (rotație), Not(x) (negație), Inv(x) ( flip) și Neg(x) se potrivesc.
În logica ternară, există o lege a triplei rotații cu 1 pas (120 °) (deplasare ciclică cu 1 pas) într-o direcție:
RotF(RotF(RotF(x))) = x
RotB(RotB(RotB(x))) = x
direcția de rotație este diferită, dar luarea exactă a poziției opuse pe cerc (negație), datorită pasului de rotație de 120 °, nu are loc, prin urmare denumirea de Schimb (schimb) pentru cele trei funcții ternare cunoscute este mai precisă decât Not (negație) și Inv (flip) .
În logica cuaternară, există o lege a rotației cvadruple cu 1 pas (90 °) (deplasare ciclică cu 1 pas) într-o direcție:
RotF(RotF(RotF(RotF(x)))) = x
RotB(RotB(RotB(RotB(x)))) = x
Sensul de rotație este diferit. Datorită pasului de rotație de 90°, este posibil să se ia exact poziția opusă pe cerc (Not (negație) și Inv (flip)), dar negația (Nu) este una, nu trei.
În logica de cinci ori, există o lege a rotației de cinci ori cu 1 pas (72 °) (deplasare ciclică cu 1 pas) într-o direcție:
RotF(RotF(RotF(RotF(RotF(x))))) = x
RotB(RotB(RotB(RotB(RotB(x)))))) = x
Sensul de rotație este diferit. Datorită pasului de rotație de 72°, nu este posibil să luați poziția exact opusă pe cerc (negație (Nu) și inversare (Inv)) …
În logica N-ary, există o lege a N-a rotație pe 1 pas:
N rotații pentru 1 pas într-o direcție echivalează cu repetiție (enunț).
În logica (N+1)-aria există o lege a (N+1)-a rotație:
(N+1) rotații de 1 pas într-o direcție sunt echivalente cu repetarea (afirmația).
…
Generalizare:
În logica plană N-ary, cercul logic plan este împărțit în N părți, în timp ce N rotații unitare (rotații cu 1 pas (deplasări ciclice cu 1 pas)) într-o direcție de-a lungul cercului logic plan sunt aduse la punctul de plecare .
Negațiile (Nu) și inversiunile (Inv) există doar chiar și în logica multivalorică.
În logica tridimensională, locul unui cerc este ocupat de sfere multidimensionale (în cel mai simplu caz, tridimensionale).
Rotații în logică ternarăRotații (deplasări ciclice, negații, inversiuni, schimburi) înainte și înapoi (rotație în sus și rotație în jos) [17] .
Dacă luăm în considerare graficele cu mai multe vârfuri , atunci rotația cu 1 pas înainte (deplasarea ciclică cu 1 înainte), rotația cu 1 pas înapoi (deplasarea ciclică cu 1 înapoi) și inversiunile (înversările) sunt posibile în ele.
Rotațiile nu sunt inversiuni și diferă de funcția de swap Swap+1/-1 (“ inversie Lukasiewicz (negație ”)) și de cele două operațiuni de swap Swap0/+1 (“NOT-1 inversare”) și Swap0/-1 (“ inversă NOT+1"). Sunt mai simple și descriu mai pe deplin posibilele tranziții. În proiectul lui Steve Grubb, aceste funcții se numesc rotire în sus (RotU) și rotire în jos (RotD), în plus, sunt numite și rotație înainte RotF și rotație înapoi RotB și rotație stânga RotLeft și rotație dreapta RotRight.
În sistemul de codare simetric ternar cu notația (-1,0+1)=( 1 ,0,+1):
y\x | unu | 0 | unu | |
---|---|---|---|---|
FT1S-6=FT1N7 | unu | unu | 0 | RotF, RotU |
FT1S-2=FT1N11 | 0 | unu | unu | RotB, RotD |
În sistemul de codare asimetric ternar cu notația (-1,0,+1)=(0,1,2):
y\x | 2 | unu | 0 | |
---|---|---|---|---|
FT1N7 | 0 | 2 | unu | RotF (Rotire înainte), RotU (Rotire în sus) |
FT1N11 | unu | 0 | 2 | RotB (Rotire înapoi), RotD (Rotire în jos) |
Pentru ambele funcții sunt valabile ecuațiile:
RotF(RotF(RotF(x))) = x
RotB(RotB(RotB(x))) = x
care este legea triplei rotații:
trei rotații ternare sunt echivalente cu o afirmație
care este similară cu legea dublei rotații în logica binară.
Doar în logica ternară o rotație de 2 pași la dreapta este egală cu o rotație de 1 pas la stânga:
RotF(x) = RotB(RotB(x))
RotB(x) = RotF(RotF(x))
Următoarele ecuații sunt valabile și în logica cu mai mult de trei valori:
Rot1B(Rot1F(x)) = x
Rot1F(Rot1B(x)) = x
În total, există cele mai simple funcții ternare unare cu o ieșire binară.
Aceste funcții includ demultiplexoare și decodoare cu o ieșire binară (pe doi biți) (rezultat).
În total, există cele mai simple funcții ternare unare cu o ieșire trinară.
Aceste funcții includ demultiplexoare și decodoare cu un rezultat (ieșire) trinar (pe trei biți).
Poate fi considerată ca uniunea a trei funcții ternare unare cu rezultatele unare din tabelul 1.
y\x 0 =x | 2 | unu | 0 | |
---|---|---|---|---|
0 | 0 | 0 | unu | FT1N1 |
unu | 0 | unu | 0 | FT1N3 |
2 | unu | 0 | 0 | FT1N9 |
În total, există cele mai simple funcții ternare unare cu o ieșire m-ary, adică un număr infinit.
Aceste funcții includ demultiplexoare și decodoare cu rezultat (ieșire) m-ary (m-bit).
În total, sunt posibile cele mai simple funcții ternare binare (cu două locuri, doi operanzi, două argumente, două intrări) cu o ieșire unară, unele dintre ele sunt prezentate în tabel:
Tabel cu unele funcții binare ternare cu ieșire unară cu codare nesimetricăTabelul 5
x0 = x | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | ||
---|---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | Nume acțiune (funcție). | Notație f(x,y) |
FT2N0 10 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Zero identic, minim identic | FT2N0(x,y) = 0(x,y) = 0 |
FT2N1 10 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | unu | Emularea ternară a binarului 2SAU-NU 2 , săgeți Pierce | FT2N1(x,y) = x ↓ 2y |
FT2N18 10 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0 | Detector (xy)=2 (adevărat=2, fals=0) | |
FT2N21 10 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | unu | 0 | ||
FT2N30 10 | 0 | 0 | 0 | 0 | 0 | unu | 0 | unu | 0 | Emularea ternară a adiției binare modulo 2, XOR 2 | FT2N30(x,y) = XOR 2 (x,y) |
FT2N31 10 | 0 | 0 | 0 | 0 | 0 | unu | 0 | unu | unu | Emularea ternară a binarului 2I-NOT2 , accident vascular cerebral Schaeffer | FT2N31(x,y) = NAND 2 (x,y) = NAND 2 (x,y) = Nu 2 (Min 2 (x,y)) |
FT2N81 10 | 0 | 0 | 0 | 0 | unu | 0 | 0 | 0 | 0 | Emularea ternară a binarului 2-in AND 2 , 2AND 2 , min 2 (x,y) | FT2N81(x,y) = min 2 (x,y) = AND 2 (x,y) = AND 2 (x,y) |
FT2N109 10 | 0 | 0 | 0 | 0 | unu | unu | 0 | 0 | unu | Emularea ternară a implicației directe (materiale) binare , X <= 2 Y | FT2N109(x,y) = IMP 2 (x,y) = (x LE 2 y) |
FT2N111 10 | 0 | 0 | 0 | 0 | unu | unu | 0 | unu | 0 | Emularea ternară a binarului 2OR 2 , max 2 (x,y) | FT2N111(x,y) = max 2 (x,y) = SAU 2 (x,y) = SAU 2 (x,y) |
FT2N113 10 | 0 | 0 | 0 | 0 | unu | unu | 0 | unu | 2 | Asemănarea ternară a funcției Webb binare, conform lui Paul Falstad CGOR [19] | FT2N113(x,y) = Swap20(Max(x,y)) |
FT2N210 10 | 0 | 0 | 0 | 0 | 2 | unu | 2 | unu | 0 | Modulul 3 adăugare cu un termen incomplet | |
FT2N223 10 | 0 | 0 | 0 | 0 | 2 | 2 | 0 | 2 | unu | Asemănarea ternară a funcției Webb binare | FT2N223(x,y) = RotR(Max(x,y)) |
FT2N243 10 | 0 | 0 | 0 | 0 | unu | 0 | 0 | 0 | 0 | Purtați descărcarea atunci când adăugați un termen incomplet | |
FT2N492 10 | 0 | 0 | 0 | 2 | 0 | 0 | 0 | 2 | 0 | detector (xy)=1 (adevărat=2, fals=0) | |
FT2N510 10 | 0 | 0 | 0 | 2 | 0 | 0 | 2 | 2 | 0 | x>y (adevărat=2, fals=0) | |
FT2N567 10 | 0 | 0 | 0 | 2 | unu | 0 | 0 | 0 | 0 | ||
FT2N1458 10 | 0 | 0 | 2 | 0 | 0 | 0 | 0 | 0 | 0 | Detector xy=-2 (adevărat=2, fals=0) | |
FT2N2622 10 | 0 | unu | 0 | unu | 2 | unu | 0 | unu | 0 | Mean Function de Steve Grubb [20] | x→y [21] |
FT2N3170 10 | 0 | unu | unu | unu | 0 | 0 | unu | 0 | 2 | Asemănarea ternară a funcției Webb binare | FT2N3170(x,y) = RotL(Max(x,y)) |
FT2N4049 10 | 0 | unu | 2 | unu | unu | 2 | 2 | 2 | 2 | CGAND [22] | FT2N4049(x,y) |
FT2N4428 10 | 0 | 2 | 0 | 0 | 0 | 2 | 0 | 0 | 0 | Detector xy=-1 (adevărat=2, fals=0) | FT2N4428(x,y) |
FT2N5299 10 | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | rotiți la dreapta (înainte) cu 1 (1/3 tură) doar o secundă argument (operand) | FT2N5299(x,y) = RotR(x) |
FT2N5681 10 | 0 | 2 | unu | 2 | unu | 0 | unu | 0 | 2 | Bitul cel mai puțin semnificativ al sumei (diferența) în sistemul numeric simetric ternar în conformitate cu {-1,0,+1}={0,1,2}, sum3s(x,y) |
|
FT2N5886 10 | 0 | 2 | 2 | 0 | 0 | 2 | 0 | 0 | 0 | x<y (adevărat=2, fals=0) | |
FT2N6396 10 | 0 | 2 | 2 | 2 | 0 | 2 | 2 | 2 | 0 | Detector x≠y (adevărat=2, fals=0) | |
FT2N7153 10 | unu | 0 | 0 | 2 | unu | 0 | 2 | 2 | unu | Funcția de mărime de Steve Grubb [23] | |
FT2N8229 10 | unu | 0 | 2 | 0 | 2 | unu | 2 | unu | 0 | Adăugarea Modulului 3 într-un sistem simetric cu corespondența {-1,0,+1}={0,1,2}, SumMod3s(x,y) | |
FT2N8991 10 | unu | unu | 0 | unu | 0 | 0 | 0 | 0 | 0 | Bit de transport pentru adăugare binară într-un sistem asimetric | FT2N8991(x,y) = Carry3n(x,y) |
FT2N9841 10 | unu | unu | unu | unu | unu | unu | unu | unu | unu | Unitate identică, medie identică | FT2N9841(x,y) = 1(x,y) = 1 |
FT2N9951 10 | unu | unu | unu | unu | 2 | 2 | unu | 2 | 0 | Asemănarea ternară a funcției Webb binare | FT2N9951(x,y) = Swap21(Max(x,y)) |
FT2N13203 10 | 2 | 0 | 0 | 0 | unu | 0 | 0 | 0 | 0 | Purtați cifra în adunare binară în sistemul numeric simetric ternar cu corespondența {0,1,-1}={0,1,2} sau {-1,0,+1}={2,0,1} | FT2N13203(x,y)= Carry3s(x,y) |
FT2N13286 10 | 2 | 0 | 0 | 0 | 2 | 0 | 0 | 0 | 2 | x=y (adevărat=2, fals=0) | |
FT2N13796 10 | 2 | 0 | 0 | 2 | 2 | 0 | 2 | 2 | 2 | x>=y (adevărat=2, fals=0) | |
FT2N15309 10 | 2 | unu | 0 | 0 | 0 | 0 | 0 | 0 | 0 | ||
FT2N15633 10 | 2 | unu | 0 | unu | unu | 0 | 0 | 0 | 0 | Minimum (mai mic dintre doi), Funcție min de Steve Grubb [24] [25] | FT2N15633(x, y) = Min(x, y) |
FT2N15674 10 | 2 | unu | 0 | unu | unu | unu | unu | unu | 2 | Funcția de succesiune ternară Brusentsov | F2TN15674(x,y) |
FT2N15740 10 | 2 | unu | 0 | unu | 2 | 0 | 2 | 2 | 2 | Heyting implicație | FT2N15740(x, y) |
FT2N15897 10 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | repeta doar primul argument (operand) | FT2N15897(x,y) = Da1(x,y) = x |
F2TN15929 10 | 2 | unu | 0 | 2 | unu | unu | 2 | 2 | 2 | Implicație materială | FT2N15929(x,y) |
F2TN16010 10 | 2 | unu | 0 | 2 | 2 | unu | 2 | 2 | 2 | Implicația Lukasiewicz | F2TN16010(x,y) |
FT2N16401 10 | 2 | unu | unu | unu | unu | unu | unu | unu | 0 | Carry bit în adunare-scădere binară într-un sistem ternar simetric în conformitate cu {-1,0,+1}={0,1,2} | FT2N16401(x,y) = Carry3s(x,y) |
FT2N19172 10 | 2 | 2 | 2 | 0 | 2 | 2 | 0 | 0 | 2 | x<=y (adevărat=2, fals=0) | FT2N19172(x,y) |
FT2N19305 10 | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | repeta doar al doilea argument (operand) | FT2N19305(x,y) = Da2(x,y) = y |
FT2N19459 10 | 2 | 2 | 2 | 2 | 0 | 0 | 2 | 0 | unu | Asemănarea ternară a funcției Webb binare | FT2N19459(x,y) = Swap10(Max(x,y)) |
FT2N19569 10 | 2 | 2 | 2 | 2 | unu | unu | 2 | unu | 0 | Maximum (mai mare de doi), Max Function de Steve Grubb [26] [27] | FT2N19569(x, y) = Max(x, y) |
FT2N19682 10 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | Două identice, maxim identice | FT2N19682(x,y) = 2(x,y) = 2 |
Tabelul 6
x0 = x | unu | 0 | i | unu | 0 | i | unu | 0 | i | ||
---|---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | unu | unu | unu | 0 | 0 | 0 | i | i | i | Nume acțiune (funcție). | Desemnare |
FT2S-9841 | i | i | i | i | i | i | i | i | i | Identic -1, identic minim | F-9841(x,y) = -1 |
FT2S-9618 | i | i | i | i | unu | unu | i | unu | 0 | Funcția Webb | F-9618 = Webb(x,y) |
FT2S-6388 | i | 0 | 0 | unu | i | 0 | unu | unu | i | F-6388 | |
FT2S-4542 | i | unu | 0 | i | unu | 0 | i | unu | 0 | rotiți înainte 1/3 de tură dintr-un singur argument secund (operand) | F-4542 = SHIFTF(X,Y) = SHIFTF(X) |
FT2S-4160 | i | unu | 0 | unu | 0 | i | 0 | i | unu | Cea mai puțin semnificativă cifră a sumei (diferența) atunci când se adună în sistemul numeric simetric ternar, sum3s (x, y) | F-4160 |
FT2S-3700 | i | unu | unu | 0 | i | unu | 0 | 0 | i | F-3700 | |
FT2S-3445 | i | unu | unu | unu | i | unu | unu | unu | i | x≠y, notL(x=y), detector x≠y (adevărat=+1 și fals=-1) | F-3445 |
FT2S-2688 | 0 | i | i | unu | 0 | i | unu | unu | 0 | semn(yx), funcție de mărime de Steve Grubb [23] | F-2688 = semn(yx) |
FT2S-1612 | 0 | i | unu | i | unu | 0 | unu | 0 | i | Adăugarea Modul 3 în sistem asimetric, summod3n(x,y) | F-1612 |
FT2S-850 | 0 | 0 | i | 0 | i | i | i | i | i | Bit de transport pentru adăugare binară într-un sistem asimetric | F-850 |
F2TS0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Zero identic, medie identică | F0(x,y) = 0 |
FT2S2688 | 0 | unu | unu | i | 0 | unu | i | i | 0 | notL(sign(yx)), inversul lui Lukasiewicz al funcției de mărime de Steve Grubb | F2688 |
FT2S3700 | unu | i | i | 0 | unu | i | 0 | 0 | unu | F3700 | |
FT2S3955 | unu | i | i | unu | unu | i | unu | unu | unu | (x<y, notL(x>y)) (adevărat=+1 și fals=-1) | F3955 |
FT2S5792 | unu | 0 | i | 0 | 0 | i | i | i | i | Mai mic dintre două, minim | F5792 = min(x,y) |
FT2S5833 | unu | 0 | i | 0 | 0 | 0 | 0 | 0 | unu | Funcția de succesiune ternară Brusentsov | F5833 |
FT2S6056 | unu | 0 | i | unu | 0 | i | unu | 0 | i | repeta doar al doilea argument (operand) | F6056 = DA1(x,y) = x |
FT2S6088 | unu | 0 | i | unu | 0 | 0 | unu | unu | unu | Implicație materială | F6088 |
FT2S6142 | unu | 0 | i | unu | unu | i | unu | unu | unu | Heyting implicație | F6142 |
FT2S6169 | unu | 0 | i | unu | unu | 0 | unu | unu | unu | Implicația Lukasiewicz | F6169 |
FT2S6388 | unu | 0 | 0 | i | unu | 0 | i | i | unu | F6388 | |
FT2S6550 | unu | 0 | 0 | 0 | 0 | 0 | 0 | 0 | i | Carry bit în adiție binară într-un sistem ternar simetric | F6560 |
FT2S9331 | unu | unu | unu | i | unu | unu | i | i | unu | x>y, notL(xy) (adevărat=+1 și fals=-1) | F9331 |
FT2S9464 | unu | unu | unu | 0 | 0 | 0 | i | i | i | repeta doar primul argument (operand) | F9464 = DA2(x,y) = y |
FT2S9728 | unu | unu | unu | unu | 0 | 0 | unu | 0 | i | Mai mare dintre două, maxim | F9728 = max(x,y) |
FT2S9841. | unu | unu | unu | unu | unu | unu | unu | unu | unu | +1 identic, maxim identic | F9841(x,y) = 1 |
„i”, „ 1 ”, „7” sau „2” înseamnă „-1”
Toate cele 19.683 de funcții binare ternare cele mai simple sunt realizate de un ALU ternar (2Trit în 1Trit) într-un sistem de trei biți de elemente logice ternare, un instantaneu al modelului căruia este prezentată în figură simulatorul logic Atanua .
Emularea ternară a funcției binare binare 2SAU-NU (săgeata lui Pierce).
Rezultatul este binar.
În sistemul de codificare asimetric ternar cu notația (-1,0,1)=(0,1,2):
Adevărat=2, fals=0.
Sub forma unei diagrame bidimensionale (cu două argumente, două coordonate):
Sub forma unui tabel de adevăr:
x0 = x | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | |
---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | |
FT2N1 10 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | unu | FT2N1 = x↓y |
Emularea ternară a funcției binare „adăugare binară modulo 2”, XOR.
Rezultatul este binar.
În sistemul de codificare asimetric ternar cu notația (-1,0,1)=(0,1,2):
Adevărat=2, fals=0.
Sub forma unei diagrame bidimensionale (cu două argumente, două coordonate):
Sub forma unui tabel de adevăr:
x0 = x | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | |
---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | |
FT2N30 10 | 0 | 0 | 0 | 0 | 0 | unu | 0 | unu | 0 | FT2N30 = XOR(x,y) |
Emularea ternară a unei funcții binare binare 2I-NOT (Scheffer stroke).
Rezultatul este binar.
În sistemul de codificare asimetric ternar cu notația (-1,0,1)=(0,1,2):
Adevărat=2, fals=0.
Sub forma unei diagrame bidimensionale (cu două argumente, două coordonate):
Sub forma unui tabel de adevăr:
x0 = x | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | |
---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | |
FT2N31 10 | 0 | 0 | 0 | 0 | 0 | unu | 0 | unu | unu | FT2N31 = NAND(x,y) = NAND(x,y) = Nu(Min(x,y)) |
Emularea ternară a unei funcții binare binare 2-in AND, 2AND, min(x, y).
Rezultatul este binar.
În sistemul de codificare asimetric ternar cu notația (-1,0,1)=(0,1,2):
Adevărat=2, fals=0.
Sub forma unei diagrame bidimensionale (cu două argumente, două coordonate):
Sub forma unui tabel de adevăr:
x0 = x | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | |
---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | |
FT2N81 10 | 0 | 0 | 0 | 0 | unu | 0 | 0 | 0 | 0 | FT2N81 = min(x,y) = AND(x,y) = AND(x,y) |
Emularea ternară a unei funcții binare binare „implicație directă (materială)”, x <= y.
Rezultatul este binar.
În sistemul de codificare asimetric ternar cu notația (-1,0,1)=(0,1,2):
Adevărat=2, fals=0.
Sub forma unei diagrame bidimensionale (cu două argumente, două coordonate):
Diagrama arată clar asimetria funcției.
Sub forma unui tabel de adevăr:
x0 = x | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | |
---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | |
FT2N109 10 | 0 | 0 | 0 | 0 | unu | unu | 0 | 0 | unu | FT2N109 = IMP(x,y) = (x LE y) |
Emularea ternară a funcției binare binare 2-in OR, 2OR, max(x, y).
Rezultatul este binar.
În sistemul de codificare asimetric ternar cu notația (-1,0,1)=(0,1,2):
Adevărat=2, fals=0.
Sub forma unei diagrame bidimensionale (cu două argumente, două coordonate):
Sub forma unui tabel de adevăr:
x0 = x | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | |
---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | |
FT2N111 10 | 0 | 0 | 0 | 0 | unu | unu | 0 | unu | 0 | FT2N111 = max(x,y) = SAU(x,y) = SAU(x,y) |
Rezultatul este în esență binar.
Într-un sistem de codare simetric ternar cu notația (-1,0,+1)=( 1 ,0,1):
Adevărat=1, fals= 1 .
Sub forma unei diagrame bidimensionale (cu două argumente, două coordonate):
Diagrama arată clar asimetria funcției față de diagonala principală (înclinată spre dreapta), adică atunci când argumentele sunt modificate, rezultatul se schimbă.
Sub forma unui tabel de adevăr:
x0 = x | unu | 0 | unu | unu | 0 | unu | unu | 0 | unu | |
---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | unu | unu | unu | 0 | 0 | 0 | unu | unu | unu | |
FT2S-9331 10 | unu | unu | unu | unu | unu | unu | unu | unu | unu | x>y |
În sistemul numeric simetric ternar cu notația (-1,0,+1)=(2,0,1):
Adevărat=1, fals=2 (-1).
Sub forma unei diagrame bidimensionale (cu două argumente, două coordonate):
Sub forma unui tabel de adevăr:
x0 = x | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | |
---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | unu | unu | unu | 0 | 0 | 0 | 2 | 2 | 2 | |
FT2N19427 10 | 2 | 2 | 2 | unu | 2 | 2 | unu | unu | 2 | x>y |
În sistemul numeric asimetric ternar cu notația (-1,0,+1)=(0,1,2):
Adevărat=2, fals=0.
Sub forma unei diagrame bidimensionale (cu două argumente, două coordonate):
Sub forma unui tabel de adevăr:
x0 = x | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | |
---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | |
FT2N510 10 | 0 | 0 | 0 | 2 | 0 | 0 | 2 | 2 | 0 | x>y |
Rezultatul este în esență binar.
Într-un sistem de codare simetric ternar cu notația (-1,0,1)=( 1 ,0,1):
Adevărat=1, fals= 1 .
Sub forma unei diagrame bidimensionale (cu două argumente, două coordonate):
Diagrama arată clar asimetria față de diagonala principală (înclinată spre dreapta), adică atunci când argumentele sunt modificate, rezultatul se schimbă.
Sub forma unui tabel de adevăr:
x0 = x | unu | 0 | unu | unu | 0 | unu | unu | 0 | unu | |
---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | unu | unu | unu | 0 | 0 | 0 | unu | unu | unu | |
FT2S3955 10 | unu | unu | unu | unu | unu | unu | unu | unu | unu | x>=y |
În sistemul de codificare asimetric ternar cu notația (-1,0,1)=(0,1,2):
Adevărat=2, fals=0.
Sub forma unei diagrame bidimensionale (cu două argumente, două coordonate):
Sub forma unui tabel de adevăr:
x0 = x | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | |
---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | |
FT2N13796 10 | 2 | 0 | 0 | 2 | 2 | 0 | 2 | 2 | 2 | x>=y |
Rezultatul este în esență binar.
Într-un sistem de codare simetric ternar cu notația (-1,0,+1)=( 1 ,0,1):
Adevărat=1, fals= 1 .
Sub forma unei diagrame bidimensionale (cu două argumente, două coordonate):
Diagrama arată clar asimetria față de diagonala principală (înclinată spre dreapta), adică atunci când argumentele sunt modificate, rezultatul se schimbă.
Sub forma unui tabel de adevăr:
x0 = x | unu | 0 | unu | unu | 0 | unu | unu | 0 | unu | |
---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | unu | unu | unu | 0 | 0 | 0 | unu | unu | unu | |
FT2S-3955 10 | unu | unu | unu | unu | unu | unu | unu | unu | unu | x<y |
În sistemul de codificare asimetric ternar cu notația (-1,0,+1)=(0,1,2):
Adevărat=2, fals=0.
Sub forma unei diagrame bidimensionale (cu două argumente, două coordonate):
Sub forma unui tabel de adevăr:
x0 = x | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | |
---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | |
FT2N5886 10 | 0 | 2 | 2 | 0 | 0 | 2 | 0 | 0 | 0 | x<y |
Rezultatul este în esență binar. În notația de codare simetrică ternară (-1,0,+1)=( 1 ,0,1):
Rezultatul este în esență binar.
adevărat=1, fals= 1 .
Sub forma unei diagrame bidimensionale (cu două argumente, două coordonate):
Diagrama arată clar asimetria față de diagonala principală (înclinată spre dreapta), adică atunci când argumentele sunt modificate, rezultatul se schimbă.
Sub forma unui tabel de adevăr:
x0 = x | unu | 0 | unu | unu | 0 | unu | unu | 0 | unu | |
---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | unu | unu | unu | 0 | 0 | 0 | unu | unu | unu | |
FT2S9331 10 | unu | unu | unu | unu | unu | unu | unu | unu | unu | x<=y |
În sistemul de codificare asimetric ternar cu notația (-1,0,+1)=(0,1,2):
Adevărat=2, fals=0.
Sub forma unei diagrame bidimensionale (cu două argumente, două coordonate):
Sub forma unui tabel de adevăr:
x0 = x | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | |
---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | |
FT2N19172 10 | 2 | 2 | 2 | 0 | 2 | 2 | 0 | 0 | 2 | x<=y |
se calculează eqv(x, y); xeqvy.
În notația de codare simetrică ternară (-1,0,+1)=( 1 ,0,1):
Rezultatul este în esență binar.
Adevărat - 1, fals - 1 .
Sub forma unei diagrame bidimensionale (cu două argumente, două coordonate):
Diagrama arată clar simetria față de diagonala principală (înclinată spre dreapta), adică atunci când argumentele sunt modificate, rezultatul nu se schimbă.
Sub forma unui tabel de adevăr:
x0 = x | unu | 0 | unu | unu | 0 | unu | unu | 0 | unu | |
---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | unu | unu | unu | 0 | 0 | 0 | unu | unu | unu | |
FT2S3445 | unu | unu | unu | unu | unu | unu | unu | unu | unu | x=y |
În sistemul de codare asimetric ternar cu notații (-1,0,+1)=(0,1,2):
Cu notații de rezultat: adevărat=2, fals=0.
Sub forma unei diagrame bidimensionale (cu două argumente, două coordonate):
Sub forma unui tabel de adevăr:
x0 = x | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | |
---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | |
FT2N13286 10 | 2 | 0 | 0 | 0 | 2 | 0 | 0 | 0 | 2 | x=y |
Ca matrice
Comparator ternar cu ieșire ternară unară.
Magnitude Function de Steve Grubb [23]
Unambiguous [28]
Determină raportul trits în cifre.
Pe lângă egalitatea lui Lukasiewicz, care are un rezultat binar și este asemănătoare egalității binare, în logica ternară generală apar funcții relaționale ternare, care determină imediat trei posibile relații de operanzi - mai mici decât, egale sau mai mari decât. Deoarece în logica binară rezultatul poate lua doar două valori, nu există astfel de funcții în logica binară.
Rezultatul se schimbă atunci când se schimbă locurile operanzilor.
În funcție de ordinea relațiilor din rezultat, pot exista mai multe varietăți ale acestei funcții. De exemplu (<,=,>), (>,=,<) și exotice (<,>,=), (>,<,=), (=,<,>) etc.
Într-un sistem de codare simetric ternar cu notație (-1,0,+1)=( 1 ,0,1):
Cu notație rezultat (x<y,x=y,x>y) = (<,=,>) = ( 1 ,0, 1).
Sub forma unei diagrame bidimensionale (cu două argumente, două coordonate):
Diagrama arată clar asimetria față de diagonala principală (înclinată spre dreapta), adică atunci când argumentele sunt modificate, rezultatul se schimbă.
Sub forma unui tabel de adevăr:
x0 = x | unu | 0 | unu | unu | 0 | unu | unu | 0 | unu | |
---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | unu | unu | unu | 0 | 0 | 0 | unu | unu | unu | |
FT2S-2688 10 | 0 | unu | unu | unu | 0 | unu | unu | unu | 0 | semn(yx) |
Într-un sistem de codare asimetric ternar cu notație (-1,0,+1)=(0,1,2):
Cu notație rezultat (x<y,x=y,x>y) = (<,=,>) = (0,1,2).
Sub forma unei diagrame bidimensionale (cu două argumente, două coordonate):
Sub forma unui tabel de adevăr:
x0 = x | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | primul operand |
---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | al 2-lea operand |
FT2N7153 10 | unu | 0 | 0 | 2 | unu | 0 | 2 | 2 | unu | F(x,y) |
Compară triturile pe biți a două numere și are o ieșire binară ternară: mai mică decât, egală cu, mai mare decât. Este unirea celor trei funcții binare ternare separate anterioare.
Rezultatul se schimbă atunci când se schimbă locurile operanzilor.
adevărat=2, fals=0
x0 = x | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | primul operand |
---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | al 2-lea operand |
x<y | 0 | 2 | 2 | 0 | 0 | 2 | 0 | 0 | 0 | |
x=y | 2 | 0 | 0 | 0 | 2 | 0 | 0 | 0 | 2 | |
x>y | 0 | 0 | 0 | 2 | 0 | 0 | 2 | 2 | 0 |
min( x , y ) este calculat.
În logica binară, funcția min(x, y) corespunde conjuncției : x ∧ y, x AND y, 2AND.
Inclus în logica lui Kleene .
În sistemul de codare simetric ternar cu notația (-1,0,+1)=( 1 ,0,1):
Sub forma unei diagrame bidimensionale (cu două argumente, două coordonate):
Diagrama arată clar simetria față de diagonala principală (înclinată spre dreapta), adică atunci când argumentele sunt modificate, rezultatul nu se schimbă.
Sub forma unui tabel de adevăr:
x 1 =y | unu | 0 | unu | unu | 0 | unu | unu | 0 | unu | |
---|---|---|---|---|---|---|---|---|---|---|
x0 = x | unu | unu | unu | 0 | 0 | 0 | unu | unu | unu | |
FT2S5792(x,y) | unu | 0 | unu | 0 | 0 | unu | unu | unu | unu | min(x,y) |
În sistemul de codare asimetric ternar cu notația (-1,0,+1)=(0,1,2):
Sub forma unei diagrame bidimensionale (cu două argumente, două coordonate):
Sub forma unui tabel de adevăr:
x0 = x | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | |
---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | |
FT2N15633 10 | 2 | unu | 0 | unu | unu | 0 | 0 | 0 | 0 | min(x,y) |
max( x , y ) se calculează.
În logica binară, funcția max(x, y) corespunde disjuncției : x ∨ y, x SAU y, 2OR(x, y).
Inclus în logica lui Kleene .
În sistemul de codare simetric ternar cu notația (-1,0,+1)=( 1 ,0,1):
Sub forma unei diagrame bidimensionale (cu două argumente, două coordonate):
Diagrama arată clar simetria față de diagonala principală (înclinată spre dreapta), adică atunci când argumentele sunt modificate, rezultatul nu se schimbă.
Sub forma unui tabel de adevăr:
x0 = x | unu | 0 | unu | unu | 0 | unu | unu | 0 | unu | |
---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | unu | unu | unu | 0 | 0 | 0 | unu | unu | unu | |
FT2S9728 10 | unu | unu | unu | unu | 0 | 0 | unu | 0 | unu | max(x,y) |
În sistemul de codare asimetric ternar cu notația (-1,0,+1)=(0,1,2):
Sub forma unei diagrame bidimensionale (cu două argumente, două coordonate):
Sub forma unui tabel de adevăr:
x0 = x | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | |
---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | |
FT2N19569 10 | 2 | 2 | 2 | 2 | unu | unu | 2 | unu | 0 | max(x,y) |
Ca matrice
Se calculează suma modulo 3: x MOD3 y, MOD3(x, y,).
Un analog al adunării modulo 2 . Numele „SAU exclusiv” („XOR”), folosit pentru „adăugarea binară modulo 2”, pentru „adăugarea ternară modulo 3” este inacceptabil, adică s-a dovedit a fi superficial, nu profund.
În sistemul de codare simetric ternar cu notația (-1,0,+1)=( 1 ,0,1):
Sub forma unei diagrame bidimensionale (cu două argumente, două coordonate):
Diagrama arată clar simetria față de diagonala principală (înclinată spre dreapta), adică atunci când argumentele sunt modificate, rezultatul nu se schimbă.
Sub forma unui tabel de adevăr:
x0 = x | unu | 0 | unu | unu | 0 | unu | unu | 0 | unu | |
---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | unu | unu | unu | 0 | 0 | 0 | unu | unu | unu | |
FT2S-1612 10 | 0 | unu | unu | unu | unu | 0 | unu | 0 | unu | x MOD3 y, MOD3(x,y) |
În sistemul de codare asimetric ternar cu notația (-1,0,+1)=(0,1,2):
Sub forma unei diagrame bidimensionale (cu două argumente, două coordonate):
Sub forma unui tabel de adevăr:
x0 = x | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | |
---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | |
FT2N8229 10 | unu | 0 | 2 | 0 | 2 | unu | 2 | unu | 0 | x MOD3 y, MOD3(x,y) |
Ca matrice
Modulul trei adăugarea este similară cu XOR binar. Aceasta este o adăugare normală, dar fără transfer: în cazul unei depășiri a rețelei de biți, salvează doar bitul ternar cel mai puțin semnificativ. La fel ca XOR binar, modulo trei fie lasă cifra ternară neschimbată, fie o modifică (efectuează operații RotF/RotB, în funcție de semnul cifrei ternare corespunzătoare).
Această caracteristică poate fi utilă pentru implementarea unei jumătăți de adunare și a unui adunator ternar cu un singur capăt .
Carry bit în adaos binar (cu două argumente, doi operanzi) în sistem de numere asimetric ternarAdică, descărcarea de transfer în timpul adăugării asimetrice ternare într-un semiadunator ternar asimetric .
În sistemul de codare simetric ternar, notația (-1,0,+1)=( 1 ,0,1):
Sub forma unei diagrame bidimensionale (cu două argumente, două coordonate):
Diagrama arată clar simetria față de diagonala principală (înclinată spre dreapta), adică atunci când argumentele sunt modificate, rezultatul nu se schimbă.
Sub forma unui tabel de adevăr:
x0 = x | unu | 0 | unu | unu | 0 | unu | unu | 0 | unu | |
---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | unu | unu | unu | 0 | 0 | 0 | unu | unu | unu | |
FT2S-850 10 | 0 | 0 | unu | 0 | unu | unu | unu | unu | unu |
În sistemul de codare asimetric ternar cu notația (-1,0,+1)=(0,1,2):
Sub forma unei diagrame bidimensionale (cu două argumente, două coordonate):
Sub forma unui tabel de adevăr:
x0 = x | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 |
---|---|---|---|---|---|---|---|---|---|
x 1 =y | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 |
FT2N8991 10 | unu | unu | 0 | unu | 0 | 0 | 0 | 0 | 0 |
Ca matrice
Adică, bitul cel mai puțin semnificativ dintr-un semisumator ternar simetric .
În sistemul de codare simetric ternar cu notația (-1,0,+1)=( 1 ,0,1):
Sub forma unei diagrame bidimensionale (cu două argumente, două coordonate):
Diagrama arată clar simetria față de diagonala principală (înclinată spre dreapta), adică atunci când argumentele sunt modificate, rezultatul nu se schimbă.
Sub forma unui tabel de adevăr:
x0 = x | unu | 0 | unu | unu | 0 | unu | unu | 0 | unu | |
---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | unu | unu | unu | 0 | 0 | 0 | unu | unu | unu | |
FT2S-4160 10 | unu | unu | 0 | unu | 0 | unu | 0 | unu | unu | LSB într-un semisumator ternar simetric |
În sistemul de codare asimetric ternar cu notația (-1,0,+1)=(0,1,2):
Sub forma unei diagrame bidimensionale (cu două argumente, două coordonate):
Sub forma unui tabel de adevăr:
x0 = x | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | |
---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | |
FT2N5681 10 | 0 | 2 | unu | 2 | unu | 0 | unu | 0 | 2 | LSB într-un semisumator ternar simetric |
Adică, transportul trit într-un semisumator ternar simetric .
În sistemul de codare simetric ternar cu notația (-1,0,1)=( 1 ,0,1):
Sub forma unei diagrame bidimensionale (cu două argumente, două coordonate):
Diagrama arată clar simetria față de diagonala principală (înclinată spre dreapta), adică atunci când argumentele sunt modificate, rezultatul nu se schimbă.
Sub forma unui tabel de adevăr:
x0 = x | unu | 0 | unu | unu | 0 | unu | unu | 0 | unu | |
---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | unu | unu | unu | 0 | 0 | 0 | unu | unu | unu | |
FT2S6560 10 | unu | 0 | 0 | 0 | 0 | 0 | 0 | 0 | unu | Purtați trit într-un semisumator ternar simetric |
În sistemul de codare asimetric ternar cu notația (-1,0,+1)=(0,1,2):
Sub forma unei diagrame bidimensionale (cu două argumente, două coordonate):
Într-un sistem asimetric ternar (-1,0,+1)=(0,1,2):
Sub forma unui tabel de adevăr:
x0 = x | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | înmulțit |
---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | Factor |
FT2N11502 10 | unu | 2 | 0 | 2 | unu | 0 | 0 | 0 | 0 | Trit rezultat junior |
FT2N6561 10 | unu | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Rezultat major trit (carry trit) |
Transferul are loc într-un caz din nouă.
Sub forma a două diagrame bidimensionale (cu două argumente, două coordonate):
Într-un sistem simetric ternar (-1,0,+1)=(2,0,1):
Sub forma unui tabel de adevăr:
x0 = x | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | înmulțit |
---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | unu | unu | unu | 0 | 0 | 0 | 2 | 2 | 2 | Factor |
FT2N8038 10 | unu | 0 | 2 | 0 | 0 | 0 | 2 | 0 | unu | Trit rezultat |
Transferul nu are loc deloc.
Sub forma unei diagrame bidimensionale (cu două argumente, două coordonate):
Implicația (din latină implicatio - plexus, implico - mă leagă strâns) este o legătură logică corespunzătoare construcției gramaticale „dacă ..., atunci ...”, cu ajutorul căreia se formează un enunț complex din două enunțuri simple. Într-o afirmație implicativă, se distinge un antecedent (bază) - o afirmație care vine după cuvântul „dacă”, și o consecință (consecință) - o afirmație care urmează cuvântului „atunci”. O afirmație implicativă reprezintă în limbajul logicii o declarație condiționată a unui limbaj obișnuit. Acesta din urmă joacă un rol deosebit atât în raționamentul cotidian, cât și în cel științific, principala sa funcție este de a fundamenta unul prin referire la altceva. În logica modernă, există un număr mare de implicații care diferă în proprietățile lor formale:
Calculat :
În sistemul de codare simetric ternar cu notația (-1,0,+1)=( 1 ,0,1):
Sub forma unei diagrame bidimensionale (cu două argumente, cu două coordonate):
Pe o diagramă bidimensională (două argumente, două coordonate), se vede clar că Funcția nu este simetrică, adică atunci când argumentele sunt modificate, rezultatul se schimbă.
Sub forma unui tabel de adevăr:
X | unu | 0 | unu | unu | 0 | unu | unu | 0 | unu | 1-a afirmație |
---|---|---|---|---|---|---|---|---|---|---|
y | unu | unu | unu | 0 | 0 | 0 | unu | unu | unu | a 2-a afirmație |
FT2S5833 10 | unu | 0 | unu | 0 | 0 | 0 | 0 | 0 | unu | Funcția de succesiune ternară Brusentsov |
În sistemul de codificare asimetric ternar cu notația (-1,0,+1) = (0,1,2):
Sub forma unei diagrame bidimensionale (cu două argumente, două coordonate):
Sub forma unui tabel de adevăr:
X | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 1-a afirmație |
---|---|---|---|---|---|---|---|---|---|---|
y | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | a 2-a afirmație |
FT2N15674 10 | 2 | unu | 0 | unu | unu | unu | unu | unu | 2 | Funcția de succesiune ternară Brusentsov |
Implicația materială este una dintre verigile principale din logica clasică. Se definește astfel: implicația este falsă numai în cazul adevărului bazei (antecedentului) și al falsității consecinței (consecinței), și adevărată în toate celelalte cazuri. Condiționalul „dacă x atunci y” sugerează o legătură reală între ceea ce vorbesc x și y; expresia „x implică material y” nu implică o astfel de legătură.
Implicația materială se calculează: max(x,-y); ; x ∨ -y.
În sistemul de codare simetric ternar cu notația (-1,0,+1) = ( 1 ,0,1):
Sub forma unei diagrame bidimensionale (cu două argumente, două coordonate):
Pe o diagramă bidimensională (cu două argumente, cu două coordonate), se vede clar că funcția este asimetrică față de diagonala principală (înclinată spre dreapta), adică atunci când argumentele sunt modificate, rezultatul se modifică , dar este simetrică față de diagonala inversă (înclinată spre stânga).
Sub forma unui tabel de adevăr:
X | unu | 0 | unu | unu | 0 | unu | unu | 0 | unu | 1-a afirmație |
---|---|---|---|---|---|---|---|---|---|---|
y | unu | unu | unu | 0 | 0 | 0 | unu | unu | unu | a 2-a afirmație |
FT2S6088 10 | unu | 0 | unu | unu | 0 | 0 | unu | unu | unu | Implicație materială |
În sistemul de codare asimetric ternar cu notația {-1,0,+1} = {0,1,2}:
Sub forma unei diagrame bidimensionale (cu două argumente, două coordonate):
Sub forma unui tabel de adevăr:
X | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 1-a afirmație |
---|---|---|---|---|---|---|---|---|---|---|
y | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | a 2-a afirmație |
FT2N15929 10 | 2 | unu | 0 | 2 | unu | unu | 2 | 2 | 2 | Implicație materială |
Aceasta face parte din logica multivalorică .
Logica lui Heyting a acoperit doar o parte din logica formală clasică .
Implicația (dacă p, atunci q) poate fi afirmată numai dacă există o construcție care, atunci când este combinată cu construcția lui p, dă automat construcția lui q. De exemplu, adevărul propoziției p implică „nu este adevărat că p este fals”. Dar din afirmația „nu este adevărat că p este fals” nu rezultă că p este adevărat, deoarece afirmația p se poate dovedi a fi neconstructivă.
În sistemul de codare simetric ternar cu notația (-1,0,+1) = ( 1 ,0,1):
Sub forma unei diagrame bidimensionale (cu două argumente, două coordonate):
Funcția este asimetrică față de diagonala principală, ceea ce se vede clar pe diagrama cu doi argumente (două operanzi, două coordonate), adică atunci când operanzii își schimbă locul, rezultatul se schimbă.
Sub forma unui tabel de adevăr:
X | unu | 0 | unu | unu | 0 | unu | unu | 0 | unu | 1-a afirmație |
---|---|---|---|---|---|---|---|---|---|---|
y | unu | unu | unu | 0 | 0 | 0 | unu | unu | unu | a 2-a afirmație |
FT2S-9841 10 | unu | 0 | unu | unu | unu | unu | unu | unu | unu | Heyting implicație |
În sistemul de codificare asimetric ternar cu notația (-1,0,+1) = (0,1,2):
Sub forma unei diagrame bidimensionale (cu două argumente, două coordonate):
Sub forma unui tabel de adevăr:
X | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 1-a afirmație |
---|---|---|---|---|---|---|---|---|---|---|
y | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | a 2-a afirmație |
FT2N15740 10 | 2 | unu | 0 | unu | 2 | 0 | 2 | 2 | 2 | Heyting implicație |
[29] [30] Aceasta face parte din logica modală .
În sistemul de codare simetric ternar cu notația (-1,0,+1) = ( 1 ,0,1):
Sub forma unei diagrame bidimensionale (cu două argumente, două coordonate):
Funcția nu este simetrică față de diagonala principală (înclinată spre dreapta), ceea ce se vede clar pe diagrama cu doi argumente (două operanzi, două coordonate), adică atunci când argumentele își schimbă locul, rezultatul se schimbă , dar este simetrică față de diagonala inversă (înclinată spre stânga).
Sub forma unui tabel de adevăr:
X | unu | 0 | unu | unu | 0 | unu | unu | 0 | unu | 1-a afirmație |
---|---|---|---|---|---|---|---|---|---|---|
y | unu | unu | unu | 0 | 0 | 0 | unu | unu | unu | a 2-a afirmație |
FT2S6169 10 | unu | 0 | unu | unu | unu | 0 | unu | unu | unu | Implicația Lukasiewicz |
În sistemul de codificare asimetric ternar cu notația (-1,0,+1) = (0,1,2):
Sub forma unei diagrame bidimensionale (cu două argumente, două coordonate):
Sub forma unui tabel de adevăr:
X | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 1-a afirmație |
---|---|---|---|---|---|---|---|---|---|---|
y | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | a 2-a afirmație |
FT2N16010 10 | 2 | unu | 0 | 2 | 2 | unu | 2 | 2 | 2 | Implicația Lukasiewicz |
Pentru a adăuga o cifră ternară la cifra de transport.
Rezultatul nu se schimbă atunci când operanzii sunt modificați.
În sistemul de codare asimetric ternar cu notația (-1,0,+1)=(0,1,2):
Sub forma unei diagrame bidimensionale (cu două argumente, două coordonate):
Sub forma unui tabel de adevăr:
x0 = x | 2 | unu | 0 | 2 | unu | 0 | primul termen |
---|---|---|---|---|---|---|---|
x 1 =y | unu | unu | unu | 0 | 0 | 0 | al 2-lea termen |
FT1B1N210 10 | 0 | 2 | unu | 2 | unu | 0 | Suma modulo 3 |
Sub formă de matrice:
Pentru a adăuga o cifră ternară la cifra de transport.
Rezultatul nu se schimbă atunci când operanzii sunt modificați.
În sistemul de codare asimetric ternar cu notația (-1,0,+1)=(0,1,2):
Sub forma unei diagrame bidimensionale (cu două argumente, două coordonate):
Sub forma unui tabel de adevăr:
x0 = x | 2 | unu | 0 | 2 | unu | 0 | primul termen |
---|---|---|---|---|---|---|---|
x 1 =y | unu | unu | unu | 0 | 0 | 0 | al 2-lea termen |
FT1B1N243 10 | unu | 0 | 0 | 0 | 0 | 0 | Du-te la n+1 |
Sub formă de matrice:
În logica ternară, funcția binară max(x, y) (OR, V) corespunde funcției ternare max(x, y), care nu mai este o funcție OR (V).
Deoarece rotația cu 180 ° - Rot (întorsătură, negație, inversare, negație) (Rot, Not, Inv, Neg) în logica binară în logica ternară corespunde la trei funcții de schimb - Schimbare și două funcții de rotație - Rot, apoi în logica ternară acolo sunt cinci asemănări ternare ale funcției binare Webb egale cu Not(max(x, y)).
Calculat: asemănarea ternară a funcției Webb binare cu Swap0/+1 = Swap0/+1(max(x, y)).
În sistemul de codare simetric ternar cu notația (-1,0,+1)=( 1 ,0,1):
Sub forma unei diagrame bidimensionale (cu două argumente, două coordonate):
Diagrama arată clar că funcția este simetrică față de diagonala principală (înclinată spre dreapta), adică atunci când argumentele sunt modificate, rezultatul nu se schimbă.
Sub forma unui tabel de adevăr:
x0 = x | unu | 0 | unu | unu | 0 | unu | unu | 0 | unu | 1-a afirmație |
---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | unu | unu | unu | 0 | 0 | 0 | unu | unu | unu | a 2-a afirmație |
FT2S110 10 | 0 | 0 | 0 | 0 | unu | unu | 0 | unu | unu | Webb-like cu Swap0/+1 = Swap0/+1(max(x,y)) |
În sistemul de codare asimetric ternar cu notația (-1,0,+1)=(0,1,2):
Sub forma unei diagrame bidimensionale (cu două argumente, două coordonate):
Sub forma unui tabel de adevăr:
x0 = x | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 1-a afirmație |
---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | a 2-a afirmație |
FT2N9951 10 | unu | unu | unu | unu | 2 | 2 | unu | 2 | 0 | Asemănarea Webb cu Swap2/1 = Swap2/1(max(x,y)) |
Ca matrice
Calculează: asemănarea ternară a funcției Webb binare cu Swap+1/-1 = Swap+1/-1(max(x, y)).
În sistemul de codare simetric ternar cu notația (-1,0,+1)=( 1 ,0,1):
Sub forma unei diagrame bidimensionale (cu două argumente, două coordonate):
Diagrama arată clar că funcția este simetrică față de diagonala principală (înclinată spre dreapta), adică atunci când argumentele sunt modificate, rezultatul nu se schimbă.
Sub forma unui tabel de adevăr:
x0 = x | unu | 0 | unu | unu | 0 | unu | unu | 0 | unu | 1-a afirmație |
---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | unu | unu | unu | 0 | 0 | 0 | unu | unu | unu | a 2-a afirmație |
FT2S-9728 10 | unu | unu | unu | unu | unu | unu | unu | unu | 0 | similar cu Webb cu Swap+1/-1 = Swap+1/-1(max(x,y)) |
În sistemul de codare asimetric ternar cu notația (-1,0,+1)=(0,1,2):
Sub forma unei diagrame bidimensionale (cu două argumente, două coordonate):
Sub forma unui tabel de adevăr:
x0 = x | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 1-a afirmație |
---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | a 2-a afirmație |
FT2N113 10 | 0 | 0 | 0 | 0 | unu | unu | 0 | unu | 2 | similar cu Webb cu Swap2/0 = Swap2/0(max(x,y)) |
Ca matrice
Calculează: asemănarea ternară a funcției Webb binare cu Swap0/-1 = Swap0/-1(max(x, y)).
În sistemul de codare simetric ternar cu notația (-1,0,+1)=( 1 ,0,1):
Sub forma unei diagrame bidimensionale (cu două argumente, două coordonate):
Diagrama arată clar că funcția este simetrică față de diagonala principală (înclinată spre dreapta), adică atunci când argumentele sunt modificate, rezultatul nu se schimbă.
Sub forma unui tabel de adevăr:
x0 = x | unu | 0 | unu | unu | 0 | unu | unu | 0 | unu | 1-a afirmație |
---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | unu | unu | unu | 0 | 0 | 0 | unu | unu | unu | a 2-a afirmație |
FT2S9618 10 | unu | unu | unu | unu | unu | unu | unu | unu | 0 | similar cu Webb cu Swap0/-1 = Swap0/-1(max(x,y)) |
În sistemul de codare asimetric ternar cu notația (-1,0,+1)=(0,1,2):
Sub forma unei diagrame bidimensionale (cu două argumente, două coordonate):
Sub forma unui tabel de adevăr:
x0 = x | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 1-a afirmație |
---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | a 2-a afirmație |
FT2N19459 10 | 2 | 2 | 2 | 2 | 0 | 0 | 2 | 0 | unu | Webb(Swap1/0)(x,y) = Swap1/0(max(x,y)) |
Ca matrice
Calculați: asemănarea ternară a funcției binare Webb cu RotF = RotF(max(x, y)).
În sistemul de codare simetric ternar cu notația (-1,0,+1)=( 1 ,0,1):
Sub forma unei diagrame bidimensionale (cu două argumente, două coordonate):
Diagrama arată clar că funcția este simetrică față de diagonala principală (înclinată spre dreapta), adică atunci când argumentele sunt modificate, rezultatul nu se schimbă.
Sub forma unui tabel de adevăr:
x0 = x | unu | 0 | unu | unu | 0 | unu | unu | 0 | unu | 1-a afirmație |
---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | unu | unu | unu | 0 | 0 | 0 | unu | unu | unu | a 2-a afirmație |
FT2S-9618 10 | unu | unu | unu | unu | unu | unu | unu | unu | 0 | Asemănarea Webb cu RotF = RotF(max(x,y)) |
În sistemul de codare asimetric ternar cu notația (-1,0,+1)=(0,1,2):
Sub forma unei diagrame bidimensionale (cu două argumente, două coordonate):
Sub forma unui tabel de adevăr:
x0 = x | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 1-a afirmație |
---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | a 2-a afirmație |
FT2N223 10 | 0 | 0 | 0 | 0 | 2 | 2 | 0 | 2 | unu | Asemănarea Webb cu RotF(x,y) = RotF(max(x,y)) |
Ca matrice
În logica binară, funcția Webb este indicată de săgeata Pierce (↓) și este definită ca antidisjuncția lui Webb(x, y) = x ↓ y = Not(x SAU y) = Not(max(x, y)) .
Autorul articolului „Informații despre logica cu trei valori” [31] denotă similaritatea ternară a funcției Webb binare prin stroke Sheffer, care în logica binară denotă o anticonjuncție, care este egală cu Sheff(x, y) = x | y = Nu(x ȘI y) = Nu(min(x, y)).
Autorul articolului definește funcția Webb cu trei valori ca Webb(a, b) = a | b = mod3(max(a, b) + 1)) (7) = RotF(max(a, b)), deși în logica binară funcția Webb este indicată prin săgeata Pierce și nu prin cursa Schaeffer și atunci când este notată cu strocul Schaeffer, funcția binară este o anticonjuncție, nu o funcție Webb (antidisjuncție) și este egală cu Not(min(a, b)) = Not(a AND b), nu Not(max(a, b)) = Nu(a SAU b), dar în prima parte a funcției, autorul calculează max(a, b), adică în locul săgeții Pierce (↓), a pus trăsătura Schaeffer (|) , dar a calculat a SAU b = max(a, b), și nu a ȘI b = min(a, b). În a doua parte a funcției, autorul calculează într-un mod complicat una dintre cele cinci asemănări ternare ale inversării binare (negație, negație) - RotF și din anumite motive consideră funcția FT2N223 singurul reprezentant al asemănărilor ternare ale funcției Webb din cele cinci asemănări ternare ale funcției binare Webb, deși funcția FT2N113 (x, y) = Swap2/0(max(x, y)) este mai mult decât FT2N223.
Calculați: asemănarea ternară a funcției binare Webb cu RotB = RotB(max(x, y)).
În sistemul de codare simetric ternar cu notația (-1,0,+1)=( 1 ,0,1):
Sub forma unei diagrame bidimensionale (cu două argumente, două coordonate):
Diagrama arată clar că funcția este simetrică față de diagonala principală (înclinată spre dreapta), adică atunci când argumentele sunt modificate, rezultatul nu se schimbă.
Sub forma unui tabel de adevăr:
x0 = x | unu | 0 | unu | unu | 0 | unu | unu | 0 | unu | 1-a afirmație |
---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | unu | unu | unu | 0 | 0 | 0 | unu | unu | unu | a 2-a afirmație |
FT2S-6671 10 | unu | 0 | 0 | 0 | unu | unu | 0 | unu | unu | Asemănarea Webb cu RotB = RotB(max(x,y)) |
În sistemul de codare asimetric ternar cu notația (-1,0,+1)=(0,1,2):
Sub forma unei diagrame bidimensionale (cu două argumente, două coordonate):
Sub forma unui tabel de adevăr:
x0 = x | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 1-a afirmație |
---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | a 2-a afirmație |
FT2N3170 10 | 0 | unu | unu | unu | 0 | 0 | unu | 0 | 2 | Asemănarea Webb cu RotB = RotB(max(x,y)) |
Ca matrice
Funcția Webb este interesantă pentru că, la fel ca și traseul Schaeffer și săgeata Pierce în logica cu două valori, poate fi folosită pentru a exprima orice funcții cu trei valori:
Singur:
Dubla:
Este foarte posibil ca elementele logice care implementează funcția Webb să fie cele care vor trebui să joace rolul LA3'ihs ternare (IS SN7400, 4 elemente logice 2I-NOT [32] ). Și eficiența viitoarelor procesoare ternare va depinde de calitatea implementării acestei funcții, de numărul de tranzistori.
/* Într-un sistem ternar cu 3 niveluri de porți ternare (3-Level LevelCodedTernaty, 3L LCT) în timpul tranzițiilor de la starea +1 la starea -1 și invers potențial (tensiune) trece prin starea 0, ceea ce duce inevitabil la false pozitive și scăzute calitatea implementării funcţiilor ternare. Într-un sistem ternar, cu două niveluri, pe trei biți, dintr-o unitate de elemente logice ternare (2-level 3-bit BinaryCodedTernary UnoUnary, 2L 3B BCT UU, 2L 3B BCT, 3B BCT) în fiecare linie individuală, faza este inversată cu ±180° și faza fizică cu +120° și -120° nu, dar toate cele trei stări sunt recunoscute logic și acest sistem poate fi asemănarea logică a sistemului ternar cu rotații de +120° și -120°. Pentru orice tranziție nu există tranziție prin starea a treia, ceea ce îmbunătățește calitatea implementării ternarului funcții.*/Cu toate acestea, funcția RotB(X ∨ Y) (și posibil, de asemenea, RotF(X ∧ Y), RotB(X ∧ Y) nu este mai rea. Singura întrebare este care dintre ele poate fi implementat cel mai eficient.
/* Pentru a face o asemănare ternară a unei rotații binare de ±180° (Nu(X)), autorul din cinci asemănări ternare ale binarului Not(X) au ales doar o rotație de -120° (RotB()), care este mai asemănător cu o rotație binară de ±180° (Nu) decât schimburile parțiale două valori din trei (Swap), dar o rotație de +120° (RotF()) nu este mai rea decât o rotație de -120° (RotB()), despre care scrie autorul. */În total, sunt posibile cele mai simple funcții binare ternare cu o ieșire binară (2Trita-2Trita).
Toate cele 387.420.489 de funcții binare ternare cele mai simple cu o ieșire binară sunt efectuate de ALU într-un sistem de trei biți de o unitate de elemente logice ternare, prezentat în figura din dreapta.
Prima etapă a unui sumator ternar complet în trei etape.
Pentru a adăuga o cifră ternară la cifra de transport.
Rezultatul nu se schimbă atunci când operanzii sunt modificați.
În sistemul de codificare asimetric ternar cu notația (-1,0,+1)=(0,1,2):
Sub forma unui tabel de adevăr:
x0 = x | 2 | unu | 0 | 2 | unu | 0 | termen întreg |
---|---|---|---|---|---|---|---|
x 1 =y | unu | unu | unu | 0 | 0 | 0 | termen incomplet |
FT1B1N210 10 | 0 | 2 | unu | 2 | unu | 0 | Suma modulo 3 |
FT1B1N243 10 | unu | 0 | 0 | 0 | 0 | 0 | Du-te la n+1 |
Rezultatul operației necesită 1 și 2/3 cifre ternare.
Adăugarea binară (cu două argumente, doi operanzi) în sistemul de numere asimetric ternar , adică semiasumator ternar asimetric .
Semi-adunatorul ternar poate fi considerat ca unirea a două funcții ternare binare (cu două argumente, doi operanzi): „adăugarea modulului 3 în sistemul numeric ternar nesimetric” și „bitul de transport în timpul adunării în sistemul ternar nesimetric”. sistem de numere simetric”.
Deoarece la adăugarea într-un sistem ternar asimetric, nu există o valoare mai mare de unu în bitul de transfer, atunci, spre deosebire de funcțiile ternare binare anterioare cu un rezultat pe un singur bit, rezultatul binar al funcției ocupă 1 și 1/3 din cifre ternare.
Rezultatul nu se schimbă atunci când locurile argumentelor sunt modificate.
x0 = x | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | primul termen |
---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | al 2-lea termen |
FT2N8229 10 | unu | 0 | 2 | 0 | 2 | unu | 2 | unu | 0 | Suma modulo 3, asimetrică; x SUMMOD3 y, SUMMOD3(x,y) |
FT2N8991 10 | unu | unu | 0 | unu | 0 | 0 | 0 | 0 | 0 | Se duce la n+1, nesimetric |
sau sub formă de matrice
Jumătate sumator ternar - jumătate scător.
Adunarea-scăderea logică ternară a două cifre ternare cu o cifră de transport în sistemul numeric ternar simetric .
Rezultatul nu se schimbă atunci când operanzii sunt modificați.
Semi-scăderea-semi-adunator ternar poate fi considerat ca uniunea a două funcții ternare binare (cu două argumente, doi operanzi): „bitul cel mai puțin semnificativ al sumei în timpul adunării-scăderii în sistemul numeric simetric ternar” și transportă bit în timpul adunării-scăderii binare (cu două argumente, doi operanzi) în sistemul numeric ternar simetric."
Spre deosebire de adunarea și scăderea în sistemul numeric asimetric ternar, rezultatul funcției are 2 cifre ternare complete (trit), deoarece în timpul adunării-scăderii în sistemul ternar simetric, toate cele trei valori trit sunt în bitul de transport.
În sistemul de codare simetric ternar cu notația (−1, 0, +1) = (i, 0, 1):
Sub forma a două diagrame cu două argumente (doi operanzi, două coordonate):
Sub forma unei diagrame cu doi argumente (doi operanzi, două coordonate):
Sub forma unui tabel de adevăr:
x0 = x | unu | 0 | i | unu | 0 | i | unu | 0 | i | primul termen-reductibil |
---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | unu | unu | unu | 0 | 0 | 0 | i | i | i | al 2-lea termen - subtraend |
FT2S-4160 10 | i | unu | 0 | unu | 0 | i | 0 | i | unu | Cifra cea mai puțin semnificativă (trit) a unei sume simetrice |
FT2S6560 10 | unu | 0 | 0 | 0 | 0 | 0 | 0 | 0 | i | Cel mai semnificativ bit (trit) al sumei simetrice, transportul trit la n+1 biți |
Sub formă de matrice
În sistemul de codare simetric ternar cu notația (-1,0,+1) = (2,0,1):
Sub formă de două două argumente (două operanzi, două coordonate) diagrame:
Sub forma unei diagrame cu doi argumente (doi operanzi, două coordonate):
Sub forma unui tabel de adevăr:
x0 = x | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | Primul termen-scăzut |
---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | unu | unu | unu | 0 | 0 | 0 | 2 | 2 | 2 | al 2-lea termen - subtraend |
FT2N15613 10 | 2 | unu | 0 | unu | 0 | 2 | 0 | 2 | unu | Cifra cea mai puțin semnificativă (trit) a unei sume simetrice |
FT2N6563 10 | unu | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | Cel mai semnificativ bit (trit) al sumei simetrice, transportul trit la n+1 biți |
În sistemul de codare asimetric ternar cu notația (-1,0,+1) = (0,1,2):
Sub forma unei diagrame cu două argumente (doi operanzi, două coordonate):
Sub forma unui tabel de adevăr:
x0 = x | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | Primul termen-scăzut |
---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | al 2-lea termen - subtraend |
FT2N5681 10 | 0 | 2 | unu | 2 | unu | 0 | unu | 0 | 2 | Cifra cea mai puțin semnificativă (trit) a unei sume simetrice |
FT2N16401 10 | 2 | unu | unu | unu | unu | unu | unu | unu | 0 | Cel mai semnificativ bit (trit) al sumei simetrice, transportul trit la n+1 biți |
Ca matrice
În total, există ≈ cele mai simple funcții binare ternare cu un rezultat nonar (ieșire).
Decodor ternar „2 trits în 9 linii”Rezultatul se schimbă atunci când se schimbă locurile operanzilor.
Poate fi considerată ca unirea a nouă funcții ternare binare cu rezultate unare.
x0 = x | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | |
---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | unu | |
unu | 0 | 0 | 0 | 0 | 0 | 0 | 0 | unu | 0 | |
2 | 0 | 0 | 0 | 0 | 0 | 0 | unu | 0 | 0 | |
3 | 0 | 0 | 0 | 0 | 0 | unu | 0 | 0 | 0 | |
patru | 0 | 0 | 0 | 0 | unu | 0 | 0 | 0 | 0 | |
5 | 0 | 0 | 0 | unu | 0 | 0 | 0 | 0 | 0 | |
6 | 0 | 0 | unu | 0 | 0 | 0 | 0 | 0 | 0 | |
7 | 0 | unu | 0 | 0 | 0 | 0 | 0 | 0 | 0 | |
opt | unu | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
În total, există posibile funcții binare ternare cu o ieșire m-ary, adică un număr infinit.
Aceste funcții includ decodoare binare (pe doi biți) și demultiplexoare cu ieșiri m-ary (m-biți).
Total, posibil, cele mai simple funcții ternare (triary) ternare cu ieșire m-ary. Dintre acest număr, cele mai semnificative sunt astfel de funcții ternare ternare care au propriile nume, cum ar fi ansambluri trinare (cu trei intrări, trei argumente, trei operanzi), adunări complete (cu trei argumente, trei operanzi ) , codificatori , decodoare , multiplexoare , demultiplexoare .
În total, sunt posibile (7 trilioane 625 miliarde 597 milioane 484 mii 987) cele mai simple funcții ternare (triale) ternare cu o ieșire unară.
Cel puținCalculați min(x, y, z)
27 tăieturi
de intrare Rezultatul nu se schimbă atunci când operanzii sunt modificați.
x0 = x | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | Primul argument (operand) | ||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | Al doilea argument (operand) | ||
x 2 \u003d z | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | unu | unu | unu | unu | unu | unu | unu | unu | unu | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Al treilea argument (operand) | ||
FT3N6 056 723 349 504 10 | 2 | unu | 0 | unu | unu | 0 | 0 | 0 | 0 | unu | unu | 0 | unu | unu | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | rezultat min(x,y,z). |
Calculați max(x, y, z)
27 tăieturi
de intrare Rezultatul nu se schimbă atunci când operanzii sunt modificați.
x0 = x | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | Primul argument (operand) | ||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | Al doilea argument (operand) | ||
x 2 \u003d z | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | unu | unu | unu | unu | unu | unu | unu | unu | unu | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Al treilea argument (operand) | ||
FT3N7 625 595 420 672 10 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | unu | unu | 2 | unu | unu | 2 | 2 | 2 | 2 | unu | unu | 2 | unu | 0 | rezultat max(x,y,z). |
Se calculează egalitatea tuturor celor trei operanzi x=y=z; eq20(x, y, z)
Rezultatul nu se schimbă atunci când operanzii sunt schimbati.
x0 = x | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | Primul argument (operand) | ||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | Al doilea argument (operand) | ||
x 2 \u003d z | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | unu | unu | unu | unu | unu | unu | unu | unu | unu | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Al treilea argument (operand) | ||
FT3N5 083 734 999 040 10 | 2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | rezultatul eq20(x,y,z). |
Când z=0, doar primul argument este trecut la ieșire,
când z=1, doar al doilea argument este trecut la ieșire,
când z=2, este oprit și nimic nu este trecut la ieșire.
Într-un sistem de codare asimetric ternar cu notația (-1,0,+1)=(0,1,2).
Sub forma unui tabel de adevăr:
x0 = x | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | Primul argument (operand) | ||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | Al doilea argument (operand) | ||
x 2 \u003d z | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | unu | unu | unu | unu | unu | unu | unu | unu | unu | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Al treilea argument (operand) control | ||
FT3N379 996 224 10 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | rezultat MUX(x,y,z) |
O funcție mixtă ternar-binară ale cărei două argumente x și y sunt ternare, iar al treilea z este binar.
Când z=0, doar primul argument este transmis la ieșire,
când z=1, doar al doilea argument este transmis la ieșire.
Într-un sistem de codare asimetric ternar cu notația (-1,0,+1)=(0,1,2).
Sub forma unui tabel de adevăr:
x0 = x | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | Primul argument (operand) | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | Al doilea argument (operand) | |
x 2 \u003d z | unu | unu | unu | unu | unu | unu | unu | unu | unu | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Al treilea argument (operand) control | |
FT2B1N379 996 224 10 | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | rezultat MUX(x,y,z) |
Funcția are același număr cu cel precedent, dar al treilea argument este binar, nu ternar. T2 înseamnă că două argumente sunt ternare nesimetrice, iar B1 (Binar) înseamnă că un argument este binar.
Unitatea de transport pentru adăugarea ternară completă în sistemul numeric ternar asimetricFuncția este mixtă, ternar-binară. Cele două argumente x și y sunt ternare, iar al treilea argument z este binar.
Rezultatul nu se schimbă atunci când operanzii sunt modificați.
x0 = x | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | primul termen |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | al 2-lea termen |
x 2 \u003d z | unu | unu | unu | unu | unu | unu | unu | unu | unu | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Purtare de la ( n − 1) a-a cifră |
FT2B1N193 099 216 10 | unu | unu | unu | unu | unu | 0 | unu | 0 | 0 | unu | unu | 0 | unu | 0 | 0 | 0 | 0 | 0 | Purtați la ( n + 1) a-a cifră |
O funcție cu toate cele trei argumente ternare are același număr, dar T2 înseamnă că două argumente sunt ternare nesimetrice, iar 1B (Binar) înseamnă că un argument este binar.
Suma modulo 3 cu adunare ternară completă în sistemul numeric ternar asimetricAdunarea ternară completă este o funcție ternară trinară (cu trei argumente, trei operanzi) care ia în considerare unitatea de transport din bitul anterior.
Funcția este mixtă, ternar-binară. Cele două argumente x și y sunt ternare, iar al treilea argument z este binar.
Rezultatul nu se schimbă atunci când operanzii sunt modificați.
x0 = x | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | primul termen |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | al 2-lea termen |
x 2 \u003d z | unu | unu | unu | unu | unu | unu | unu | unu | unu | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Purtare de la ( n − 1) a-a cifră |
FT2B1N307318912 10 | 2 | unu | 0 | unu | 0 | 2 | 0 | 2 | unu | unu | 0 | 2 | 0 | 2 | unu | 2 | unu | 0 | Suma modulo 3 |
O funcție cu toate cele trei argumente ternare are același număr, dar T2 înseamnă că două dintre argumente sunt ternare nesimetrice, iar B1 (Binar) înseamnă că un argument este binar.
În total, este posibilă (58 septilioane 149 sextilioane 737 chintilioane 003 cvadrilioane 040 trilioane 059 miliarde 690 milioane 390 mii 169) cele mai simple funcții ternare trinare (triare) cu o ieșire binară. Dintre acest număr, cele mai semnificative sunt astfel de funcții ternare ternare care au nume proprii, cum ar fi sumatoare , codificatoare , decodificatoare , multiplexoare , demultiplexoare .
Adder ternar Adunarea completă asimetrică ternară în sistemul numeric ternar asimetricSumatorul complet ternar cu un singur bit este o funcție booleană ternară. Bitul de transport (trit) are doar două valori 0 și 1 din trei posibile. Spre deosebire de funcțiile ternare anterioare cu un rezultat de un bit, rezultatul are o lungime de 1 și 2/3 cifre ternare.
Rezultatul nu se schimbă atunci când operanzii sunt modificați.
x0 _ | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | primul termen |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
x 1 | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | al 2-lea termen |
x2 _ | unu | unu | unu | unu | unu | unu | unu | unu | unu | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Purtare de la ( n − 1) a-a cifră |
FT2B1N307 318 912 10 | 2 | unu | 0 | unu | 0 | 2 | 0 | 2 | unu | unu | 0 | 2 | 0 | 2 | unu | 2 | unu | 0 | MZR (trit) de sumă asimetrică, sumă modulo 3 |
FT2B1N193 099 216 10 | unu | unu | unu | unu | unu | 0 | unu | 0 | 0 | unu | unu | 0 | unu | 0 | 0 | 0 | 0 | 0 | SZR (bit) sumă asimetrică, transportă bit la ( n + 1)-al-lea bit |
Nu există a treia valoare a cifrei ternare (2) în cifra de transport, deoarece în „cel mai rău” caz , adică în cea mai mare cifră „1”. O unitate de transport apare în 9 cazuri din 18.
Așa cum în logica binară un sumator binar ternar complet este înlocuit cu două jumătăți binari, la fel în logica ternară un sumator ternar complet poate fi înlocuit cu două jumătăți binari, numai cu diferența că cele două jumătăți de sumare binare sunt la fel, iar două jumătăți de adunare ternare sunt diferite.
1. Un semi-adunator binar complet („adunarea a două cifre ternare complete”). A doua jumătate nu este un binar complet („adăugarea unei cifre ternare complete cu o cifră ternară incompletă (cu 2/3 din cifra ternară completă)”), deoarece nu există valori mai mari decât „1” în bitul de transport.
2. Un binar incomplet „adunarea a 1 cifră ternară cu 2/3 cifră ternară”. Al doilea binar asimetric „adunarea a 1 cifră ternară cu 1 și 2/3 cifre ternare”. Rezultatul este o lungime de doi biți de 1 și 2/3 biți ternari.
Scăderea completă ternară de 1 bit este o funcție booleană ternară ternară incompletă, deoarece există doar două valori 0 și 1 în bitul de împrumut. Rezultatul este de 1 și 2/3 de biți ternari.
Rezultatul se schimbă atunci când se schimbă locurile operanzilor.
x0 _ | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | descăzut |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
x 1 | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | 1 -a subtragere |
x2 _ | unu | unu | unu | unu | unu | unu | unu | unu | unu | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | A 2- a subtraend , împrumutați la ( n − 1)-a cifră |
FT2B1N305 269 056 10 | 2 | unu | 0 | 0 | 2 | unu | unu | 0 | 2 | 0 | 2 | unu | unu | 0 | 2 | 2 | unu | 0 | Diferența LSM , diferența modulo 3 |
FT2B1N188 684 176 10 | unu | unu | unu | 0 | unu | unu | 0 | 0 | unu | 0 | unu | unu | 0 | 0 | unu | 0 | 0 | 0 | Diferența SZR , împrumut din ( n + 1) a-a categorie |
În categoria împrumutului nu există o a treia valoare a categoriei ternare (2), întrucât în „cel mai rău” caz , adică în categoria senior „1”. O unitate de împrumut apare în 9 cazuri din 18.
Spre deosebire de sistemul numeric ternar asimetric, în care sumatorul și scăderea sunt dispozitive diferite, în sistemul numeric ternar simetric (Fibonacci), adunarea și scăderea sunt efectuate de un singur dispozitiv - un sumator-scăzător ternar simetric, format din două funcții ternare.
Sumator-scător simetric ternarSpre deosebire de adăugarea în sistemul numeric ternar asimetric, la adăugarea în sistemul numeric ternar simetric, toate cele trei valori (-1,0,1) pot fi în bitul de transport, astfel încât numărul de tăieturi crește de la 18 la 27
. rezultatul nu se schimbă atunci când operanzii își schimbă locul.
În sistemul numeric simetric ternar cu semne (i,0,1)=(-1,0,+1).
Sub forma unui tabel de adevăr:
x0 = x | unu | 0 | i | unu | 0 | i | unu | 0 | i | unu | 0 | i | unu | 0 | i | unu | 0 | i | unu | 0 | i | unu | 0 | i | unu | 0 | i | Desemnare | primul termen | ||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | unu | unu | unu | 0 | 0 | 0 | i | i | i | unu | unu | unu | 0 | 0 | 0 | i | i | i | unu | unu | unu | 0 | 0 | 0 | i | i | i | al 2-lea termen | |||
x 2 \u003d z | unu | unu | unu | unu | unu | unu | unu | unu | unu | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | i | i | i | i | i | i | i | i | i | Purtare de la ( n − 1) a-a cifră | |||
0 | i | unu | i | unu | 0 | unu | 0 | i | i | unu | 0 | unu | 0 | i | 0 | i | unu | unu | 0 | i | 0 | i | unu | i | unu | 0 | FT3S-624603703776 10 (x,y,z) | LSM (valoare min. res.) sume | |||
unu | unu | 0 | unu | 0 | 0 | 0 | 0 | 0 | unu | 0 | 0 | 0 | 0 | 0 | 0 | 0 | i | 0 | 0 | 0 | 0 | 0 | i | 0 | i | i | FT3S3483426737048 10 (x,y,z) | Suma WPP, reportată la n+1 |
transferul (1 sau -1) apare de 8 ori din 27, de patru ori -1 și de patru ori 1.
În sistemul numeric simetric ternar cu semne (2,0,1)=(-1,0,+1).
Sub formă de două cuburi de dimensiunea 3x3x3 (ca un cub Rubik ):
Cub al cifrei celei mai puțin semnificative a sumei, format din trei straturi:
și cubul de ordinul cel mai înalt al sumei (transfer), format din trei straturi:
Sub forma unui tabel de adevăr:
x0 = x | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | A , primul termen | ||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | B , al 2-lea termen | ||
x 2 \u003d z | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | unu | unu | unu | unu | unu | unu | unu | unu | unu | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | C în , transportă de la ( n − 1)-a cifră | ||
FT3N2201243090944 10 | 0 | 2 | unu | 2 | unu | 0 | unu | 0 | 2 | 2 | unu | 0 | unu | 0 | 2 | 0 | 2 | unu | unu | 0 | 2 | 0 | 2 | unu | 2 | unu | 0 | Suma S , LSM (valoarea cea mai mică a rezoluției). | ||
FT3N5655566473615 10 | 2 | 0 | 2 | 0 | 0 | 0 | 2 | 0 | 0 | 0 | 0 | 0 | 0 | unu | unu | 0 | unu | 0 | 2 | 0 | 0 | 0 | unu | 0 | 0 | 0 | 0 | C out , sume SZR, transferate la n+1 |
В виде двух строк: строки значений младшего
разряда (трита) S суммы :
021210102210102021102021210 или c зада наперёд 012120201120201012201012120 строки значений старшего
разряда (трита) C out суммы (трита переноса ):
202000200000011010200010000 или с зада наперёд 000010002010110000002000202
Одна из множества возможных реализаций табличного троичного симметричного agregator:
în Java :
în JavaScript :
in python :
în C++ :
în C :
in php :
(Puteți verifica și modifica codurile programelor Java, JavaScript, Python, C++, C, PHP etc. în multe compilatoare online, de exemplu, în compilatorul online pentru 60 de limbaje de programare la ideone.com [34] . )
pe TB :
În sistemul numeric simetric ternar cu semne (0,1,2)=(-1,0,+1).
Sub formă de două cuburi de dimensiunea 3x3x3 (ca un cub Rubik ):
Cub al cifrei celei mai puțin semnificative a sumei, format din trei straturi:
și cubul de ordinul cel mai înalt al sumei (transfer), format din trei straturi:
Sub forma unui tabel de adevăr:
x0 = x | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | A , primul termen | ||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | B , al 2-lea termen | ||
x 2 \u003d z | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | unu | unu | unu | unu | unu | unu | unu | unu | unu | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | C în , transportă de la ( n − 1)-a cifră | ||
FT3N3 188 195 065 856 10 | unu | 0 | 2 | 0 | 2 | unu | 2 | unu | 0 | 0 | 2 | unu | 2 | unu | 0 | unu | 0 | 2 | 2 | unu | 0 | unu | 0 | 2 | 0 | 2 | unu | Suma S , LSM (valoarea cea mai mică a rezoluției). | ||
FT3N7 296 225 640 448 10 | 2 | 2 | unu | 2 | unu | unu | unu | unu | unu | 2 | unu | unu | unu | unu | unu | unu | unu | 0 | unu | unu | unu | unu | unu | 0 | unu | 0 | 0 | C out , sume SZR, transferate la n+1 |
un zero în bitul de transport apare în 4 cazuri, o unitate în bitul de transport apare în 18 cazuri și un doi în bitul de transport apare în 4 cazuri.
В виде двух строк: строки значений младшего
разряда (трита) S суммы :
102021210021210102210102021 или c зада наперёд 120201012201012120012120201 строки значений старшего
разряда (трита) C out суммы (трита переноса ):
221211111211111110111110100 или с зада наперёд 001011111011111112111112122
În total, sunt posibile ≈4,43*10 38 cele mai simple funcții ternare trinar cu ieșire trinară.
Funcții ternare trinar cu ieșire 18-are Decodor ternar „2 și 2/3 trits în 18 linii”Poate fi considerată ca unirea a 18 funcții ternare (triare) cu rezultate unare (ieșiri).
Rezultatul nu se schimbă atunci când operanzii sunt modificați.
x0 = x | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 | 2 | unu | 0 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
x 1 =y | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 | 2 | 2 | 2 | unu | unu | unu | 0 | 0 | 0 |
x 2 \u003d z | unu | unu | unu | unu | unu | unu | unu | unu | unu | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | unu |
unu | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | unu | 0 |
2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | unu | 0 | 0 |
3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | unu | 0 | 0 | 0 |
patru | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | unu | 0 | 0 | 0 | 0 |
5 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | unu | 0 | 0 | 0 | 0 | 0 |
6 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | unu | 0 | 0 | 0 | 0 | 0 | 0 |
7 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | unu | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
opt | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | unu | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
9 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | unu | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
zece | 0 | 0 | 0 | 0 | 0 | 0 | 0 | unu | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
unsprezece | 0 | 0 | 0 | 0 | 0 | 0 | unu | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
12 | 0 | 0 | 0 | 0 | 0 | unu | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
13 | 0 | 0 | 0 | 0 | unu | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
paisprezece | 0 | 0 | 0 | unu | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
cincisprezece | 0 | 0 | unu | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
16 | 0 | unu | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
17 | unu | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Poate fi considerată ca uniunea a 27 de funcții ternare (triare) cu rezultate unare (ieșiri).
Doar cele mai simple funcții tetrar ternare posibile cu ieșire m-ary.
Total, posibil cele mai simple funcții tetrar ternare cu ieșire unară.
Multiplexor trinar Trinity (cu trei intrări)Are patru intrări:
1. primul număr ternar
2. al doilea număr ternar
3. al treilea număr ternar
4. semnal de comutare ternar 3 intrări
și o ieșire:
1. număr ternar selectat
În codificarea asimetrică ternară cu notația (−1, 0, +1) = (0, 1, 2):
Tabelul de adevăr:
x0 = x | X | X | X | Primul argument (operand) |
---|---|---|---|---|
x 1 =y | y | y | y | Al doilea argument (operand) |
x 2 \u003d z | z | z | z | Al treilea argument (operand) |
x 3 =u | 2 | unu | 0 | Controlul al 4-lea argument (operand). |
FT4NMUX(x,y,z,u) | z | y | X | rezultatul acțiunii funcției tetrad ternare MUX(x, y, z, u) |
O posibilă implementare a unui multiplexor ternar, care este o funcție ternară, numai prin intermediul funcțiilor ternare și al operatorilor ternari:
FT4NMUX(x, y, z, u) = FT2N21(x, u) FT2N19569 FT2N567(y, u) FT2N19569 FT2N15309(z, u) = = FT2N21(x, u) FT2Nmax FT2N567(y, u) FT2Nmax FT2N15309(z, u) = = FT2Nmax(FT2Nmax(FT2N21(x, y),FT2N567(y, x)),FT2N15309(z, u))Aici funcțiile ternare binare (cu două argumente) FT2N21(x, u), FT2N567(y, u) și FT2N15309(z, u) sunt utilizate în notația de prefix pentru a selecta primul, al doilea sau al treilea operand și binare (cu două argumente). ) funcția ternară FT2N19569 (FT2Nmax ) în prima și a doua linie este utilizată ca operator binar (cu doi operanzi) cu o notație infixă pe linie, iar în a treia linie ca funcție ternară binară (cu două argumente) cu un prefix notație pe linie pentru a procesa cele trei rezultate anterioare, cum ar fi operatorul binar și funcția OR2 (2OR) în logica binară. În același timp, funcțiile din prima și a doua linie au o prioritate mai mare în linie, adică sunt executate pe rând primele, iar operatorii din prima și a doua linie au o prioritate mai mică decât cele binare (cu două argumente). ) funcții, adică sunt executate pe rând a doua după funcțiile de execuție. A treia linie este formată doar din funcții imbricate, deci funcțiile sunt executate pe rând, începând cu funcția cu cea mai profundă imbricare.
Total, posibil, cele mai simple funcții ternare n-are.
Aceste funcții includ scramblere n-ari și multiplexoare n-ari .