Ternary Computing
eviltwinimposter writes: "This month's American Scientist has an article about base-3 or ternary number systems, and their possible advantages for computing and other applications. Base-3 hardware could be smaller because of decreased number of components and use ternary logic to return less than, greater than, or equal, rather than just the binary true or false, although as the article says, '...you're not going to find a ternary minitower in stock at CompUSA.' Ternary also comes the closest of any integer base to e, the ideal base in terms of efficiency, and has some interesting properties such as unbounded square-free sequences. Also in other formats."
... the choices will be 0, 1, and Maybe :)
... this might be an easier step to integrate. There was a previous article here talking about light based quantum computing- give it a few years :)
Actually not a bad step- I wonder when they look at quantum computers using light
They've finally invented my favorite circuit... the Maybe gate?
Fascism starts when the efficiency of the government becomes more important than the rights of the people.
In theoretical CS classes, we learned all about it, it's not exactly news.
The thing is, it's simpler to manufacture binary logic than ternary.
So, no big deal really... the choices were made some time ago.
Next step: quantum computing.
Seems like someone has to bring up base3 computing every once in a while, just like asynchronous circuit design. I'm sure there are plenty of reasons why they are technically superior. But it has taken us 50+ years to get to this point with synchronous circuit design and binary logic. It would take many years to get to this point using totally new technology, and in the meantime the current computer industry would continue to grow exponentially. I'll believe in these technologies when I see a useful example of them.
Try reading Knuth's The Art of Computer Programming, Vol. 2, Section 4.1, Positional
Number Systems.
There is an extended discussion on the balanced
ternary system and some other exotic number
systems (base 2i etc). There are some merits
to the ternary system but it would be
harder to implement with transistors.
Setun operated on numbers composed of 18 ternary digits, or trits
Awww...they shied away from the obvious choice, tits.
Ternary numbers are an interesting sidetrack and some similar techniques are used in fast chip-based systems to speed up adding (each bit also caries it's own overflow and sign bits, turning the classic serial add-with-carry into a more parallel operation).
It must be remembered that, for floating point numbers, base 2 is *the* most efficient representation, as argued in the classic paper "What Every computer Scientist Should Know About Floating Point Arithmetic" by David Goldberg. The deep understanding behind IEEE754 is a masterpiece of numerical engineering that is often overlooked, IMO.
2 4 8 16 32 64 128 256 512 1024 2048 4096...
10 seconds
3 9 27 81...ummmm...crap
10 seconds
This'll make all my computer-numbering knowledge obsolete
Last post!
What will we call the digits? Click here to find out:
http://www.schlockmercenary.com/d/20001226.html
I can't say that I don't give a fuck. I've just run out of fuck to give.
As far as I know radio astronomers user 3-level data recording for their VLBI (Very Long Baseline Interferometry) data. One of the equipment was from JPL at Caltech lab. Their problem is to detect a weak signal in presence of strong noise. In this case, it doesn't make sense to do 8-bit digitization. Instead people do 1-bit, 2-bit digitization and average out many sample of data. They found that the recording efficiency was highest when they used 3-level digitization.
I myself worked on VLBI in the same lab but our machines were using 1-bit digitization (BTW, we used regular video cassette and somewhat modified VCR to record 7 GBytes on single 2-hour tape).
Nope: one, zero, and CowboyNeal.
And just think of the 2's! They'll get hooked around the slightest obstruction, and all the other numbers, causing constant clogging. And if the added number is -1, that's adding TWO SYMBOLS per bit instead of one!
__
Do ya feel happy-go-lucky, punk?
I have seen in one book that there was created a ternary computer long time ago. I have tried to find anything with google and found this page.
--
Ilya Martynov (http://martynov.org/)
Close, but you are still doing digital computing! Just because it's not binary doesn't mean it isn't digital.
The problem is understanding the new metaphors required to implement new modes of math. Simply adding a third state doesn't get you a revolutionalry new mode of computation, it just gets you more bits per wire. For example, look at flash technology: they now store multiple bits per cell by designing sense amps to convert the analog level to a binary pattern.
Read the book "An Introduction to Quantum Computing". I forget the author, but it's the one that comes with the CD of mathematica examples.
In this book they discuss a simple adder that Feynman derived. The realization of the Hamiltonion operator (similar to the transfer function H(s)) requires a gate called:
Square root of NOT!
It's pretty crazy, but when you walk through the example step-by-step, it becomes more clear why it is needed to build the simple adder.
Now how you actually build a root-not gate is another problem, but I'm just making this point to illustrate how "meta" the new concepts have to be to truly revolutionize computation.
There's simply nothing better than binary right now.
https://www.accountkiller.com/removal-requested
Think about applying it to D/A and A/D conversion for AC signals. It could simplify a flash converter,a nd conversion to convention twos-complement signed integers can be performed by a hard-wired lookup table.
-jcr
The only title of honor that a tyrant can grant is "Enemy of the State."
"Cheaper by the Threesome"
I can always go for a cheap three-some.
Pat
Humans are slow, innaccurate, and brilliant; computers are fast, acurrate, and dumb; together they are unbeatable
One of the advantages of digital over analog is that between the 1 and the 0 you have a ton of space that you can consider an error so if your signal is distorted (long wires), you still know what's going on- and you know when you have an error in transmission. In fact, when you read a binary signal, you can have true, false, and no output. With 3 possible inputs, the neutral zones between accepted values would become smaller and would significantly increase chances of error. In fact, the higher the base you take, the less margin of error.
Something is : A member of set of elements called 'yes', a member of the set of elements called 'no' and a member of the set of elements called the intersection of 'yes' and 'no'.
... I might find that that adaptive image compression scheme I was using years ago might turn out to be useful after all. (Some parts of it would have been tons more practical if you used a ternary coding.) Now if I can find the source code amongst all those 360KB floppies that I've been meaning to burn onto CDs and convert it from FORTRAN...
CUR ALLOC 20195.....5804M
if YX switch right
it seems to me that this is valid logic, now if we can just come up with a transister that can do this sort of thing.
I am sure we can come up with a muti transistor system made of 2 transisters, but what would be the economic savings of having a ternary logic system if you double the transisters?
I am the Alpha and the Omega-3
damnit
if Y<X stop
if Y=X swithch left
if Y>X switch right
I am the Alpha and the Omega-3
If bits becomes tits, then I say bytes should become teats.
And, instead of a 'nibble' being four bits, we'd have a 'suckle' equaling three tits, like that babe in the movie Total Recall.
Instead of dealing in megabits or gigabytes, we'd have gigatits, which could be abbreviated as DD, saving vast amounts of bandwidth -- which might as well be called handwidth now -- or terateets, abbreviatable as DDD.
With all the sexual content in technical lingo (e.g., male and female plugs, master/slave, unix, etc.) this is only a natural development, and given that half of these machines are used for nothing but downloading pictures of naked breasts anyways...
Is this truly the only Earth I can live on?
I looked over the article and it made a good arument for a ternary computing architecture, however there are some big problems with this that were not addressed in the article. Although I'm not a math expert, I did gain a math minor in college during my computer engineering curriculum, and I have to say ternary computing seems to have too many complex problems that need solving to be worth it.
First of all, hardware is getting smaller and smaller all the time, so the whole premise behind ternary computing (base 3 would use less hardware) doesn't apply, especially since brand new gates would have to be made in order to distinguish between 3 signal levels rather than 2, and that would be taking a HUGE step backwards.
Secondly, doing things on a chip or two is great, but the main problem in computing is communications. The major part of creating efficient communications protocols is determining the probability of a bit error. Probability is a very complicated science, even using the binary distribution, which is a very simple function (that just happens to escape me at the moment.) Now, add another bit, and you have to use a trinary distribution, which I'm sure exists but isn't very common (and not surprisingly, I can't recall that one either). Long story short, this theoretical math has been made practical in computer communications over a long period of time dating back 50 years, starting all over with 3 bits rather than 2 would be extremely complicated and VERY, VERY expensive.
Finally, figuring out logical schemes for advanced, specialized chips is a daunting task. Engineers have come up with shortcuts over the years (K-maps, state diagrams, special algorithms, etc) but adding in a 3rd state to each input would make things almost impossibly complicated. All computer engineers working at the hardware level would have to be re-educated, starting with the simplest of logical gates.
Overall, in my humble opinion, we'll never see large scale use of ternary computing. There's just too much overhead involved in switching over the way of doing things at such a fundamental level. The way hardware advances each year, things are getting smaller and smaller without switching the number base, so until we reach the limit using binary, we'll probably stick with it.
~ now you know
As if in precognition, a language has already been developed for ternary computers:
TriINTERCAL! (the link is about INTERCAL, chapter 6 is about the TriINTERCAL extension)
I can't wait until college courses are taught in this truly wonderous and -- who would have thought -- futuristic language.
The enemies of Democracy are
x <<< 3 is (usually) x*3
and x >>> 3 is (usually) x/3.
The representation of negative numbers is interesting but there is a 3's complement scheme that works. Eg.
-- SIGFPE
With a binary system, you can change from a 1 to 0 state, and a 0 to 1 state without having to pass through an intervening state. (You can call 1 high voltage, 0 low, or 1 a high tone and 0 a low tone) Only two states to worry about.
I don't see how one can design something as fast as a binary system, and still allow us to go from 0 to 2 without going through 1. If you are doing voltages, the intermediate value theorem forces you to go through state 1. Similarly if you are doing tones.
One can design a logic system, with "forbidden" state transitions. But then you would have to argue that "ternary logic with forbidden transitions" is significantly better than "binary logic." It seems to me that you would lose 90% of your advantage if you forbade 0 - 2 and 2 - 0 transitions.
God is real unless declared integer
and rain on the computer scientist's parade, but...
.5? Is it your ternary maybe, or is it the circuit switching from 0 to 1? And what about the case when your manufacturing process introduces errors greater than you expected? What if 1 comes out .75? Is that in the maybe range or the 1 range?
The reason that you can't get, and won't for a long time, anything greater than base 2 is that setting and sensing more than two logical levels in a given voltage range is very hard. Those ones and zeros you like to look at and think about discretely are not really ones and zeros, but voltages close to those that represent one and zero, close enough to not confuse the physics of the device in question.
For example, if you arbitrarily define 0 volts to be a 0 and 1 volt to be 1 in an equally useless and arbitrary circuit, and you monitor the voltage, what do you assume is happening if one of your discrete samples is
Now, I remember something about double flash memory densities by sensing 4 voltage ranges in each cell, but I imagine the timing precision required to do that correctly is orders of magnitude easier to do (and still a royal pain) than putting ternary logic into a modern microprocessor (with tens of millions of transistors, implementing everything created in the entire history of computing that might be even marginally useful so that you can 3 more frames per second in quake3).
Outside of a dog, a book is a man's best friend. Inside a dog, its too dark to read.
I vaguely remember discussing this in a Computer Science class on circuit design four or five years back. While this might be possible for some sort of non-copper processor, I imagine the difficulty would be in rapidly distinguishing correct voltages for each bit on today's technology.
In simplistic terms, presently, if you have two bits, at a clock cycle, the electrical current is either 0 (0 volts) or 1 (3.3 volts). Theoretically, you could have an infinite number of bits, provided you had infinite voltage precision. Thus, 0=0v, 1=.1v, 2=.2v,
However, your processor is probably designed with a tolerance in mind, thus 3.1 volts is probably a 1, and
I'm sure there's a PhD EE somewhere in this crowd that can explain this even better, but my point is that I don't think anything but binary computers are useful with current electrical technology. Presently, there's a reason we use two bits - because it's easy and *fast* to check "on or off" without having to determine how "on" is "on". Now, if one was able to use fiber and send colors along with the pulses, then you might have something...
I prefer to write pi as 10.... atleast that's how it is written in base pi!
;-)
-WolfWithoutAClause
"Gravity is only a theory, not a fact!"Electron, proton, neutron
Up, down, top,
bottom, strange, charmed
blue, red, green
Yikes!
Reading the article would've answered your long expression of puzzlement.
Just as there may be practical limitations behind precisely maximising the volume for a soup can, doesn't mean that getting close will not allow you to approach the maxima of the function.
A better question would've been why use his measurement of efficiency, a question the article examines.
-- perl -e'print pack"H*","6e656d6f406d38792e6f7267"'
I like what was written, and it is interesting, but I don't think that this will change much in terms of how computation is performed or perceived.
One of the earlier posters had something mentioned about it all being two dimensional... actually, a good way to look at computation is using what Turing devised - a one dimensional model of computation based upon a single tape.
In studying Turing Machines, the mathematical model based upon (potentially infinitely long) tapes is used extensively. Move the tape right, left, and modify what is under the head, for example, are the primitive operations. A set of functions defines how symbols are changed, and when computation halts, as well as the resulting halt state.
A basic examination of binary versus ternary systems, based on Turing Machines, and some (basic) complexity Theory...
In binary systems, computation trees build at the rate of 2^n, where n is the number of computational steps...
In a trinary system, we are looking at 3^n.
So, performance could be considered in terms of - I believe 3^n - 2^ n, i.e., polynomial, not exponential) differences in processing power.
But, any binary system could by used to -simulate- a 3^n system through the use of a (at worst polynomially larger) set of functions and / or chunkings of data (to represent the 3 states in binary, repeatedly). Also, necessary encodings could be performed by 'chuncking' the ternary data into blocks.
Polynomial gains are nice, but at best, we don't have an earth-shattering enhancement.
P.S. Some of this may be a bit rusty, so if anyone has a more concrete analysis or corrections, feel free...
Sam Nitzberg
sam@iamsam.com
http://www.iamsam.com
I believe the word you're looking for is quaternary.
<g>
-l
Help cure AIDS, cancer, and more. Donate your unused computer time to worldcommunitygrid.org. Join Team Slashdot!
As a matter of fact, there was a ternary computer built in Russia, called Setun' (apostrophe signifies a soft n).
Russian translation of Knuth's Volume 2 was quite funny. Knuth is saying that "Somewhere, some strange person might actually build a ternary computer". The russian translation had a translators footnote "Actually, it has been built in russia in 1960s".
See this page for more information about setun:
http://www.computer-museum.ru/english/setun.htm
I am shocked, shocked to discover that a fundamental computer architecture explored in the 1950's, rejected as unworkable, and forgotten is in fact unworkable.
The feeling that this induces has no word in English, but in Japanese it's called yappari.
The product of the number of digits and symbols for a number X, in base e notation, is less than in any other base.
You could've hired me.
Ternary computing is an old idea; in fact it is said that there were a group of computer scientists in the old USSR who were quite enamored with the idea, especially the balanced ternary form (-1, 0 +1).
The problem is that although you reduce the number of gates, the gates themselves get horribly complex. There are only 16 possible two-input binary gates, of which two are trivial, two are wires, two are NOTs, two are ANDN, two are ORN, and one each of AND, NAND, OR, NOR, XOR and XNOR. All of these are familiar gates. However, there are no less than 19683 two-input ternary gates. If you sacrifice some of the combinations, you suddenly are doing less than true ternary computation, and you're wasting the power of your machine.
That, in combination with the sheer commonality of true/false type states, means, in my opinion, that binary is here to stay.
I think they meant "most efficient" in terms of "highest information density"," as a function of the size of a digit versus highest numerical value the digit can hold. The ease of operation on this number was not taken into account. They leave all that stuff up to the engineers to work out.
__
Do ya feel happy-go-lucky, punk?
A friend and I were thinking about representations on a ternary system. We had to figure out what units of storage would be available.
;-)
Obviously, there's the basic unit of storage (1, 0, -1; on, off, undefined; true, false, maybe; whatever). We called this a trit for obvious reasons of parallel to the binary world.
Ok, good enough so far. Then, there's the basic unit that's used to store characters or very simple numbers. We decided that 9 trits would be good (this was to allow for UNICODE-like representations). This seemed to be a shoe-in for the title, tryte.
Then, you occasionally want to have something that is used in firmware to sub-divide trytes into various fields. In binary we call this a nibble, so in honor of Star Trek we called this one (3 trits) a tribble.
But, there it stopped, as we soon realized what we'd be measuring the system's word-size in.... Man, I thought SCSI was a painful phrase to use all the time
The parent comment is exactly on target when it comes how things are implemented in electronics... you have to detect n-1 threshold levels, not n. It's actually even worse, because generating a single threshold level comes almost "for free" with an appropriate combination of transistors -- this very fact is the basis for CMOS logic, which has by and large taken over as the *only* way to implement logic circuits...
It occurred to me while reading the article that even if you could build a ternary microprocessor with more bang for the buck than the standard binary variety, in order to be useful in a microcomputer, you would need ternary RAM as well, so I began think about the problem.
Most desktop computers use dynamic RAM to achieve high densities at low cost. (It's not unusual for new desktop systems to have 1G of RAM in about 4 modules.) They work on the principal of charging tiny capacitors. Charged represents a 1 for instance and not charged represents a 0. But capacitors can be charged in one of two polarities (one plate negative with respect to the other, or positive). Thus it seems that it would be a small step to go from binary dynamic RAM to ternary. The supporting electronics and refresh circuitry would be a bit more sophisticated, but the capacitor array might be basically the same, resulting in increased capacity (log3/log2) with about the same real estate! So perhaps dynamic RAM is really optimal in ternary as well.
I'm not an electrical engineer; the above is merely speculation off the top of my head. Does anyone more qualified than myself have any thoughts on this?
This is interesting stuff. Does anyone have links to software experiments in ternary computing? Obviously, running on binary hardware, such projects probably won't have storage or execution advantages, but are there application domains where ternary representation makes a more elegant software solution?
So I may have to exchange my geek insult "couldn't figure out the logarithm to the base 2 of 65536 without a calculator" into "couldn't figure out the logarithm to the base 3 of 19683 without a calculator."
Quattuor res in hoc mundo sanctae sunt: libri, liberi, libertas et liberalitas.
Excellent. This will translate Tri-Intercal, with native bitwise trinary operators, into much more efficient machine code.
We just did some testing, comparing those search algorithms with eachother. Although hashes are more or less comparable in speed with ternary trees, binary trees are much slower.
Some sample output: (btw, we didn't balance the ternary tree, although we did some really basic balancing on the binary tree).
Clearly the ternary tree and hash are much faster than the binary tree. Although there are still some optimisations to make, we believe that the ternary tree will outperform the binary tree at all times.
We also made some (very) cool graphs with Graphviz, but unfortunately have no good place to share it with the rest of the
This is a replacement signature.
How is the problem of distinguishing a .75 voltage in your ternary system different than distinguishing a .5 voltage in a binary system?
A/D controllers do this all the time, for larger bases, often on the order of 256 to 24 million. Granted, the digital results don't have logical consequences. But you can't ignore the fact that binary systems have to set tolerance levels just the same as ternary systems.
Software sucks. Open Source sucks less.
As long as we're turning the world on its ear, lets go all the way, and use triacs. We implement it (the tri-state gate, that is) like an inverter, more-or-less. These have two (non-linear ) on states plus off, and are just right for implementing an inverter. They'd probably be great for trinary logic, too.
I just dug out my old physical electronis book (Micro Electronics, by Jacob Millman, First edition), and can't find them in there, so here's a slightly less academic reference.
There might be some problems with trying to get the clock speed high enough to compete with the Intel/AMD marketing, though; it says that they can be triggered into conduction by high dV/dt.
See what I've been reading.
Yes, I think so. Obviously an irrational number is a poor choice of base. It merely expresses the minima of the function.
Integer steps in the function are the correct choices, just like a soup can probably needs to fit certain machine constraints.
I was taking exception to your claim that chosing the closest integer was meaningless.
In any case, a darn cool article. Well written, clear, and entertaining - so my nitpickiness threshhold has climbed significantly.
-- perl -e'print pack"H*","6e656d6f406d38792e6f7267"'
I've read a lot of posts on how this will be difficult to implement using voltages and circuits....and you know what? It *IS* difficult to sense 3 different voltage.
The solution? Don't use electric circuits...don't use transistors.
Electric circuits will only get us so far, and then we'll have to move on to more 'exotic' hardware -- optical computing, molecular computing, quantum computing.......
Suppose a qubit's state is describe by the spin polarization of an electron pair -- they can either be both up, both down, or one of each -- you can't tell which one, so it's actually 3 states (balanced at that)......
In optical computing, suppose you can push the frequency of the lasers a little in either direction of 'neutral'...this is also base 3.
So what I'm trying to say is, don't just say "base-3 computing is not practical with current technology" -- because it isn't, but it WILL be practical (perhaps even more so than binary computing) with future technology.
And to finish with something lighter...
troolean x, y, z;
x = true;
y = false;
z = existentialism;
:)
"You have the option of insanity. I do not. And that makes me crazy!" - Brian to Angela, My So-Called Life
I don't like this.
Any system that can't spell "42" is not worth it.
Don't make fun of my speling, english is my 2nd language...
Close, but you are still doing digital computing! Just because it's not binary doesn't mean it isn't digital.
Did anyone say it wasn't digital? Or did you confuse "variants of digital computing" with "alternatives to digital computing"?
Yep. Look at the thread's title.
-- Kaufmann
To the editors: your English is as bad as your Perl. Please go back to grade school.
Then came my Epiphany of the File Cabinet a few weeks ago ...
When counting, thou shalt not stop at One. Neither shalt thou go on to Three.
C is defined for a binary machine, like most programming languages (if they are defined properly at all). That's why it's hard to believe that we're going to see non-binary computing anytime soon. It would be very inefficient to reuse old software, making the theoretical effiency gain rather worthless. (Hmm, but this didn't prevent Intel/HP/et al. from developing the IA-64 architecture, may be they start trinary computing next?).
By the way, Ada does have support for trit operations (in some bizarre way), but this was merely an accident.
There's a bird called the Tufted Titmouse. The name for a group of these birds is a "rack".
They tried this on Star Trek, and it went berserk and blew up starships. It'll all end in tears, mark my words.
There is nothing strange about sqrt of NOT, except its name.
yes, but you say that and then you go on to give a really strange explanation!
the interesting point is:
a -- sqrtNot --> b
...is a probability, but...
a --> sqrtNot --> sqrNot --> b
...is absolutely certain as it reduces to a = ~b. kinda like the three-polaroid filter experiment for light, i guess.
regardless, i think in the early stages of any new science it's ok to use the term 'weird', maybe even, 'bizzarre', or as some may so, 'hella dope".
https://www.accountkiller.com/removal-requested
It's not nice to put words in someone else's mouth. I did read the article. The article didn't address the technical problems I was speaking of and others have posted. As an engineer I also am responsible for delivering working products, not just a bunch of theoretical promise. The most important thing in engineering is not chasing down wild new concepts and getting them to work (that's what professors are for,) it's making money using your problem solving skills.
~ now you know
The hypoteticaly "cheap" ternary system assumess, that the need for hardware scales linearly with the base. That is, e.g. it binary gate requires 2 transistors, ternary needs 3 transistors. In such a case 2^3=8 is less than 3^2=9.
So system with 2*3=6 transistors can count to 9 in ternary while in binary only to 8. When searching maximum for f(x) = x^(const/x), one ends up with e for all const>1. That's why the mention that the 3 is the closest to e - an number base ideal. I remember having that case in mathematics competition way back in 8th grade.
In engineering practice, that is quite far from truth. In ECL logic the ternary half-adder requires the same number of transistors as in binary logic. It requires the same number of wires to carry ternary digit as binary one. However we all know why is ECL nearly extinct - its high consumption prevents high integration.
The benefits of binary logic can be seen in CMOS, where we have two states, each of which consumes also no power and still has low output impedance.
Petrus
I'm glad to know that unbounded square-free ternary sequences exist. Life has a meaning now.
Actually apart from the colors, all the other
particles are come in (isospin) pairs.
Under SU(2) (weak force pairs)
Electron Neutrino
up down
strange charmed
bottom top
proton neutron (which is up down again)
blue red green because color has
SU(3) symmetry
You really couldn't be more wrong! Ternary logic is at the basis of some of the hottest research in asynchronous logic design right now.
For instance, if you had a group of transistors that computed multiplication and stored the output in a register you might see the value of that register change several times until the computation was completed. Right now, the only way that you know a computation is complete is that logic is designed to complete an action in X cycles; as long as you feed in the data and wait X cycles you will get the proper result. Clock cycles can be waisted here, because a simple multiplication might be completed in a single clock while harder multiplications might take the full amount of time the logic area is spec'ed for.
Using async logic, this can be done much more effciently. The multiplication happens just as soon as input data is given and the next stage of the logic knows when the operation is complete because its wires has three states: 0, 1, and not-yet-done. As soon as all the wires are 0 or 1, the computation is finished (consequently, this is how input works to). There are no "wasted" clock cycles, stuff moves through the logic as quickly as it is completed.
Of course, there has been some debate whether three states are needed on each wire, or an just additional acknowledgement wire is needed (say 8 wires + 1 for an 8-bit computation block). But, believe it or not there are already patents for both methods!
I guess, by having true ternary logic on each wire, you could have logic that will grab a result just as soon as X% of the wires report they are done with the computation to get "good enough" answer if the logic is iteratively improving a problem.
-AP
Yeah, that was a pretty clever hoax. The sort of thing your average elitist idiot would fall for.
m l
http://www.urbanlegends.com/legal/pi_indiana.ht
-l
Help cure AIDS, cancer, and more. Donate your unused computer time to worldcommunitygrid.org. Join Team Slashdot!
Another reason that the computer industry grows exponentially is because the computer industry uses computer technology... which is growing exponentially. In other words, if I design my chip using a computer, as computers get faster so does chip design. As chip design gets faster, it becomes feasible to design more complicated chips... thereby allowing me to design more complicated chips which allow me to design more complicated chips...
Edu. sig-line: Choose rhymes with lose. Chose rhymes with goes. Loose rhymes with goose.
Comparing? THEN use THAN.
Imagine what you could do with Cesium OS running on a ternary computer. Even better, a distributed system of Beowulf clusters running Cesium-based ternary processes! And perhaps a Natlie Portman wall paper, while looking at your fake Britney Spears porno at 3am, eating a taco with an old X-Files on television in the background...
Check it at google.com .
This comment was stolen off of Usenet.
You're right about the communication problem, IMO. That's why if ternary computing takes on, it will be limited to "inside" a single chip for a while. For example, an FPU or a DSP processor could make use of ternary arithmetic internally, converting to and from binary when you need to go off-chip. That may have advantages. A general-purpose ternary computer, however, probably won't be useful for a very long time if at all.
sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});
Whoops! Thanks :).
2) DNA is written in base 4 -- native language.
3) Half the representation cost of base 2.
4) Your own hands are naturally base 4 -- the thumb is a carry.
DNA is a Turing machine. You, however, being dynamic and emergent, are not.
Perhaps the possibility (if still a while off) of ternary computing devices will encourage some people to avoid meaningless powers of two when picking arbitrary limits. I'm talking about things like the maximum length of a filename: no point making it 64 characters, when 50 or 100 would work just as well and not cause the reader of the code to worry about whether the power-of-two-ness was significant.
Of course for buffer sizes you sometimes want the space to fit into an exact multiple of pages in memory. But a structure definition that has one int, one char and an int[128] is really pointless. Just make it a round number in base ten!
-- Ed Avis ed@membled.com
Um, sorry. Listen to something.
Doesn't matter what, but your speakers and sound card are well able to reporduce a signal to within 0.5 V.
There are operational amplifiers working at radio frequencies, that have plenty of resolution and precision.
Besides, if you were looking to do a ternery computer, you'd use -5V, 0V and +5V as your markers, drawing on decades of knowledge from analouge tecniqies, and then not have to worry.
For those that don't know, the standard RS-232C serial bus uses a tri-state signal. Has done scince it's introduction.
If I'm not mistaken, the martians from Heinlein's "Stranger in a Strange Land" also used a base-three system of mathematics. Interesting. I wonder why he was so fond of it.
---If you can't trust a nerd, who can you trust?
Ignore this part of my post - it's just to pad the time spent writing this comment out to 20s so
-- SIGFPE
In fact, T1 test equipment has the test patterns all 1s and all 0s. Guess which transmits faster...
Tired of free ipod spam sigs? Opt ou
Tired of free ipod spam sigs? Opt ou
I'm talking about Steve Grubb of Trinary.cc. His website has everything you wanted to know about trinary logic.
Interesting to note there are six unary gates: invert, rotate up/down, shift up/down. I independently verified every one of the 27 unary functions can be created using those six.
More interesting is the binary operators. Min analogous to OR, Max to AND, XMax to XOR. There's even a Mean and Magnitude to average and compare values of two trits, respectively. It's not all theory, though.
- Half and Full adders
- Multiplexers and Demultiplexers - interesting to note, I designed a four-relay 1-trit demux independently from trinary.cc.
- Flip-flops: Level/Edge triggered
- Async and Sync counters
- Shift Registers: Serial <-> Parallel
- Magnitude Comparator
- Classical and Checksum Parity
- Trinary <-> Binary
- Analog <-> Digital
Heck, Steve even has tested schematics of trinary gates. Too bad they're so complex, I expect something simplier is possible.Yet, chip manufacturers won't budge. Until trinary is more well-researched, I don't expect them too either. As Steve Grubb said,
Tired of free ipod spam sigs? Opt ou