For those who haven't been following the previous episodes, IOTA is the cryptocurrency that uses ternary logic because it supposedly makes it more efficient (it very much remains to be proven). The idea is to bring cryptocurrencies to embedded devices, which IMO like much of the cryptocurrency space is very much a solution in search of a problem. Didn't stop them from making a fortune with pre-mined coins during the cryptocurrency boom.
I remember that a few years ago there was a lot of debate about whether IOTA was truly decentralized. Advocates were arguing basically that "it's not completely decentralized now but it will be soon". Well I guess we know were we're at right now.
> uses ternary logic because it supposedly makes it more efficient (it very much remains to be proven)
I think that's generous - using a java 32-bit integer to emulate a single 'trit' in your software stack is bound to be hysterically less efficient, and effectively rule out any embedded/IoT use.
I know the stock answer to that was "we're working on ternary hardware too", but that just adds more questions - why are you redesigning the world from the ground up here? Are you going to rewrite entire embedded operating systems in ternary when you have this chip? How on earth is that going to help adoption by developers?
> Didn't stop them from making a fortune with pre-mined coins during the cryptocurrency boom.
Indeed, and there was some sort of spat a few weeks ago that likely saw at least one of the founders continue to fleece the community.
"why are you redesigning the world from the ground up here? Are you going to rewrite entire embedded operating systems in ternary when you have this chip? How on earth is that going to help adoption by developers?"
I believe it's a variant on the popular cryptocurrency business plan of "if I throw up enough smoke, I can tell you that behind the smoke there's a beautiful shining city that just as soon as the smoke clears, you can go live in forever and ever, so you'd better buy in now before it becomes overcrowded!"
For this plan to work, you want the quality smoke, you know, thick, luscious, oleaginous, billowing and colorful and perhaps even interesting in its own right. On that front, this "ternary-computation" smoke is pretty brilliant stuff.
If you talk to IOTA believers about these questions they will just spin you in circles. They will tell you that trinary computing/encryption is better, more secure, better for IOT, etc.
If you ask what that even means and why it would be better, or even different from binary since it's just a different base of numbers, they will either do some sort of circular logic or just get angry.
It's kind of mind blowing to have conversations with people who are heavily invested in something emotionally that falls apart with a single question.
This doesn't even get into the inherent centralization or the fact that no one can actually explain how the decentralization will actually work.
It isn't even comfortable realizing there are so many people like that out there.
Devil's advocate arguments, from someone who has never really paid attention to IOTA:
There's one place ternary logic already exists—the https://en.wikipedia.org/wiki/Content-addressable_memory found in network switches. You need to be able to put essentially "trit vectors" on the address bus (think e.g. "0110??10?1") to describe the search queries you want your CAM to execute; and the CAM itself needs to be able to store trits so that it can represent bits that "don't matter" and could match a search query with any value in that position. (The "third value" here acts like a NULL does in an RDBMS, but comparing equal to everything rather than unequal.)
That's... pretty much the only existing real-world use I know of for ternary, though.
For a non-real-world argument: ternary is closest to the theoretical "base e" that would have the best numeric packing factor, and therefore be able to represent numbers in the fewest digits. If you're incredibly space-constrained but only somewhat CPU-constrained, it might make sense to encode numbers as ternary when persisting them, as a kind of compression; and then to persist them to something else that stores natively in ternary (like an imaginary NAND cell design half-way between SLC and MLC with three voltage levels per cell.) But that's probably nothing to do with what IOTA's doing with it, if they're using ternary as a live representation for computation.
Disclaimer: I'm not IOTA's biggest fan, I broke their ternary hash function and one of the IOTA co-founders threatened to sue me after I disclosed the vulnerability to them. See previous hn thread on it: https://news.ycombinator.com/item?id=16457120
Following on with your discussion of Ternary in networking networking switches, I think Balanced Ternary can be mathematically elegant way to represent numbers. We shouldn't completely dismiss it just because currently we have massive path dependencies on binary.
However in the context of a highly ambitious project, such as IOTA, which is attempting to integrate with a large number of deployed systems that use binary, it is a mistake to switch to ternary. None of the existing tooling works, you have to write custom software for stuff that in binary have already been built and well tested.
tl;dr Doing one impossible thing is hard enough, never try to do two impossible things at the same time.
> Balanced Ternary can be mathematically elegant way to represent numbers
When discussing ternary computation, I always see people talking about representation and storage. In these aspects, ternary can indeed be more elegant and efficient than binary.
I never see any discussion about the complexity of the physical circuits, though. From the little I have seen (see [1]) it seems that using ternary circuits for computation will never be a good idea. Even though you'd need fewer wires to carry information, that advantage is more than cancelled by the increased complexity of the computation circuits themselves (those papers compare specifically binary and ternary adders and multipliers).
What you are talking about is data transfer and storage, but what IOTA seems to claim is that somehow the math for cryptography changes and is better when it is 'trinary'.
You've got the marketers who want to driv up the price and the cultists who have bought in and can't imagine anything but the price going in. Coherent conversation is rarely found in such an hysterical sell-sell-sell environment.
Yeah the pre-mined coins were sketchy, and the ternary was dubious.
I don't want the innovation to get lost in the bathwater though: the tangle datastructure was novel. Not an expert, but it was designed to allow for minimal proof of work while retaining some hashed auditability and tamper resistance. I think the key idea would be that you help hash several other blocks into transactions and then your transaction will get hashed by a few other workers. It didn't require heavy POW so it was more suitable for an embedded device to perform on the edge.
> 3 is closer to the universal optimum 2.71 than is 2. That is the absolute most simple elevator pitch for ternary.
- iota co-founder
Drivel like the above has long outed Iota as an absolute scam. The ternary business was some mixture of (a) bamboozling non-technical users, (b) distraction from its other failings, and (c) sheer delusion.
Iota pushers hand-wave with slogans like "gets faster the more people use it" and "replace the central coordinator with voting (someday?)" but without actual security. Whereas PoW has a well-understood security model (see 51% attacks) Iota hopes you won't notice that basically nothing can be decided without the central coordinator.
And then it gets worse. Iota-without-the-coordinator washes its hands of consistency. Individual nodes would have to pray they are connected to good actors, and then through some unexplained governance scheme, deduce the consensus state.
In short: iota is unsuitable as any kind of distributed ledger.
>> 3 is closer to the universal optimum 2.71 than is 2. That is the absolute most simple elevator pitch for ternary.
>- iota co-founder
lol they seriously say that? For those who aren't aware...
You get e (2.71828...) as the optimal base when you're trying to minimize the product of a) the number of symbols you're using and b) the number of symbols needed to represent a number.
Once there are other factors that are significant, it's no longer the optimum. And indeed, in the real world, you care about the difficulty of implementing base-x vs base-y logic in hardware, the installed ecosystem for computing in that base, etc, which (to put it mildly) heavily favors base-2, even for domains where one subproblem is more naturally expressed in trinary.
I read the white paper about a Tangle a few years ago. The design doesn't make sense because it doesn't seem like the network would be able to reach some kind of consensus at all.
Also, rolling your own POW and making claims about that POW isn't some trivial thing. Hashcash was created in 1997 which is eleven years before bitcoin. Rolling your own crypto system isn't just something where you can just make one up and use in a production environment.
Maybe it's the greatest thing since the invention of the Fourier transform but talk is cheap and it looks like despite being many years into development and having access to more cash than most startup would dream of they still haven't managed to make it work without a central node. Cryptocurrency startups sure seem to break things but they don't move very fast.
I'll add it to the list of absolutely revolutionary blockchain technologies that are going to change the world [working implementation is left as an exercise for the reader].
The tangle may be novel because it's useless for a distributed ledger: thus far IOTA has relied on a centralized coordinator.
The tangle, like trits and many other IOTAisms, appear to be the perfect basis for a scam: too complicated for non-experts to fully understand yet just enough plausibility to sell it.
Even if the creators were not conciously trying to create a scam, so far it has been indistinguishable from one.
(I'm interested in a peer review of tangle as just searching for it only uncovers page upon page of marketing drivel.)
I was also trying to find actual info. https://iota.org/IOTA_Whitepaper.pdf is the closest i found. Its still a bit annoying and meandery but its much better than the rest of their marketing drivel.
The tangle is a DAG (directed acyclic graph). A DAG is a viable data structure for a distributed database, but it has issues for a cryptocurrency where you want to maintain consensus on a single objective global ledger.
There are a bunch of cryptocurrencies which use DAGs. All of them claiming to be 100% unique and innovative.
I saw one which claimed it was "impossible to 51% because it's a DAG and both chains just end up on the network"
No. That means either you don't have consistency (which means 51% attacks could be theoretically implemented with way less than 51% of the hash rate) or that the consensus of which transaction are valid can be 51%ed.
Iota is even worse. Doesn't even try to have a distributed consensus, just uses a centralized validator.
A DAG describes a wide variety of data structures and choices. Bitcoin is a DAG.
Actually wouldn't any sort of structure that prevents double spending have to be a dag? In order to prevent double spending you need to put transactions in topological order (to know how much money the account has). If you can do that your data structure is a DAG.
A block chain is a special sub-type of DAG in which (1) there is only one edge from each node to a predecessor, and (2) there is only one canonical path through the DAG at any given time and there exists an objective set of rules for selecting this path. Usually nodes that are not part of this path are eventually forgotten in a block chain.
I remember that a few years ago there was a lot of debate about whether IOTA was truly decentralized. Advocates were arguing basically that "it's not completely decentralized now but it will be soon". Well I guess we know were we're at right now.