54

What are the benefits of the ternary number system over the more traditional binary number system? Are there drawbacks to ternary with respect to binary, aside from the obvious of less adoption?

1
  • I’m voting to close this question because it is about the legacy protocol and given the latest updates it might make sense to only keep recent Shimmer, ShimmerEVM and IOTA Chrysalis questions Apr 28 at 7:01

2 Answers 2

36

Citing response of the IOTA's Co-founder David,

Ternary is the optimal radix, actually Base E (2.71....) is, but you can't make processors like that. So it comes down to Base Binary (2) vs Base Ternary (3). 3 is closer to the universal optimum 2.71 than is 2. That is the absolute most simple elevator pitch for ternary.

There are plenty of great articles on this, if you find computer science fascinating. The one already posted is a good high level historic overview. For a more math intensive one you can check out this article or if you are really into computer science you should check out this video, it goes from fundamentals of logic to hardware and software engineering in a binary vs ternary context. To be sure, we use balanced ternary +1 0 -1 or as we prefer + 0 -

The benefits of ternary go beyond mere computational performance in a parochial 1:1 comparison versus binary. Another area where ternary shines is Artificial Neural Networks, Artifical Neurons and Artificial Intelligence Logic. In fact this is actually how our brain also computes. Other areas where ternary shines is in graphical processing, cryptography and search, among other things.

A last point I want to raise regarding ternary is that it almost inevitably is the future of computing. Spintronics got 3 values natively: Spin Up, Down and No Spin. Same goes for Photonics/Optical Computing; use the two orthogonal polarizations of light to represent + and - and lack of light/darkness as 0.

To clarify we are not doing ternary for the sake of doing ternary/something exotic. Ternary is simply the superior technological solution. Nor are we attempting to replace the cemented legacy of Intel and AMD in the desktop realm or ARM, Synopsys etc. in the current mobile market. Our processors are a new kind of processing unit for the new realm of computation in new fields such as IoT, AI, Massively Distributed Computing etc.

I'll end with a quote:

Perhaps the prettiest number system of all, is the balanced ternary notation.

Donald E. Knuth in The Art of Computer Programming

0
20

Three questions were made:

  1. Why does IOTA use a ternary number system?
  2. What are the benefits of the ternary number system over the more traditional binary number system?
  3. Are there drawbacks to ternary with respect to binary, aside from the obvious of less adoption?

The other answer concerns question number 2, which doesn't concern IOTA specifically, but instead talks about the general advantages of ternary (i.e. could be the answer for anything that chose to use ternary instead of binary). I'll try to address question 1 here to the best of my knowledge:

The is no practical purpose in choosing ternary for IOTA except to manufacture the utility for the ternary processor Jinn, under development by the same team that initially created IOTA.

That choice already cost IOTA community the Curl vulnerability. Curl was an in-house made ternary cryptographic hash function, which was used everywhere a hash function was needed inside IOTA, including PoW. It is always a risky move to roll out a new, poorly analyzed, cryptographic algorithm. It was eventually shown to be insecure, and as a consequence, wallet key derivation algorithm had to be changed to the more conservative Keccak (SHA-3).

Every theoretical advantage ternary system could bring is nullified by the decades of investment made into perfecting binary computers, software and algorithms (the lack of a properly secure ternary hash function is just a small sample of the trouble of venturing into ternary).

5
  • 2
    "It was eventually shown to be insecure" The MIT never published code that showed this in practice.
    – Achim
    Nov 30, 2017 at 7:13
  • 3
    Ethan Heilman from that research group said the following during his presentation about Curl-P: "The attacks presented in Narula's paper, our paper, while being valid academic criticism of the latest public version of the Curl hash function, do not represent valid attacks on the IOTA cryptocurrency." Nov 30, 2017 at 8:50
  • 5
    It motivated the hardfork that locked-up the funds of lot of people, so you can't say the problem was of no consequence for IOTA. If, in retrospect, that change in the wallet is still justifiable, then the attack is very serious indeed.
    – lvella
    Nov 30, 2017 at 17:08
  • 1
    If there was an attack we would see signs of it on the Internet, at least as a proof-of-concept code. There are no such signs. Dec 26, 2017 at 8:26
  • 1
    No, because the vector was patched very soon.
    – lvella
    Dec 27, 2017 at 15:23

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.