|WikiProject Philosophy / Logic||(Rated Start-class)|
Combinatorial versus Combinational an Historic PerspectiveEdit
There has been a lot of debate about the use of the two terms, esp see wiki discussion of FPGAs. It is my observation that the language usage appears to have drifted. It would be interesting to nail this down to the specifics. But what I can offer is the following concrete observation. Back in the 1970's, when I first learned Boolean Algebra, the text book (title not recalled) on the subject very definitely taught Combinatorial Logic and I never encountered the term Combinational. Recently I decided to learn how to program an FPGA. The text book I purchased "Digital Design with Digilent FPGA boards", starts off with a review of Boolean Algebra and talks about Combinational Logic. In the wiki FPGA discussion there is also further anecdotal evidence that other old-timers like me learned Combinatorial Logic, but the newer generation of people are learning Combinational Logic -- it's the same thing only the name has changed. Therefore I conclude that somewhere in the past 35 years, without any fanfare, the language usage has drifted. Before I started studying contemporary text books/FPGAs, Back in the mid 80's I switched my focus from electronics to software, I had never encountered the term Combinational Logic in my work as a computer programmer, but now that I am getting back into electronics design, the term Combinational seems to be the majority usage. Conclusion, both terms are valid, but Combinatorial is the older term and Combinational is the newer term that is now in popular use. When or why this shift occurred is a topic for further research. codeslinger compsalot (not motivated to create an account) 06:11, 18 November 2011 (UTC) — Preceding unsigned comment added by 22.214.171.124 (talk) P.S. Combinatory Logic is something quite different it is to do with abstract high level computer language principles. But the Combinatorial Logic being discussed here has to do with the combining of Boolean Equations in complex ways, see for instance De Morgan's laws.
An additional data point: I just finished reading the CPLD XC9500 family datasheet http://www.xilinx.com/support/documentation/data_sheets/DS063.pdf and it makes extensive use of the term combinatorial, it does not anywhere at all reference the term combinational. The original publication date is not noted, but Revision 3 of this document was published in 1998. Since Xilinx is one of the pioneers in this field, I would be inclined to conclude that the term combinational was adopted sometime within the last ten years -- after that data sheet was written. codeslinger 07:46, 21 November 2011 (UTC) — Preceding unsigned comment added by 126.96.36.199 (talk)
- I guess I'm one of the oldtimers that was taught "combinatorial", like several others mentioned at talk: field-programmable gate array#"Combinational" vs. "Combinatorial". I agree with codeslinger: This article should briefly mention the transition. I'd like to know the reason that certain companies switched from one term to another. Was it just random chance, new documents written by newly hired people from a different linguistic region? Or has anyone at these companies hinted that they deliberately changed their house style, and for what reason? --DavidCary (talk) 13:32, 9 November 2012 (UTC)
- The "Terminology" section here was very short, and a bit vague ("some people", etc.), so I merged it with the lead and explicitly stated that the terminology was controversial. The term "combinatorial" is very common, at least in my engineering community, and though I personally consider it less correct, I think it needs to be mentioned in the lead, as readers may be confused at having to dig into the article to find it . --Fru1tbat (talk) 14:12, 12 March 2014 (UTC)
This is what John F Wakerly has to say on the topic :
' COMBINATIONAL, NOT COMBINATORIAL!
A step backward in MMI's introduction of PAL devices was their use and popularization of the word "combinatorial" to describe combinational circuits. ...'
(This would historically appear to have been circa 1978.)
This suggests a different interpretation to previous respondents on why "combinatorial" is more familar to a particular generation.
Both words are in common use at this time (and so both should appear) but it seems "combinational" is to be emphasized going forward. — Preceding unsigned comment added by 188.8.131.52 (talk) 15:56, 17 January 2016 (UTC)
This page is really disappointing/confusing and should be deeply reorganizedEdit
- The important concept that should be explained in Wikipedia is the difference between combinatorial circuits and sequential circuits. Combinatorial circuits are just boolean functions and can be described using boolean logic. Sequential circuits are combinatorial circuits plus memories; they can be described as state machines, and their external properties can be described using temporal logic (see Bochmann 1982, E.M. Clarke and Bud Mishra 1983, and many others since). In seqiential circuits, the outputs depend on the inputs and past history, while in combinatorial circuits, the outputs only depend on the inputs.
- The fact that "sequential circuit" redirects to "sequential logic" is a nonsense, it should just be the opposite. It is just because hardware designers use the term logics in their dialect. There is no mathematical concept of "sequential logic", because such logic is just the same as Boolean logic. And this is very obvious in this page: all the algebraic laws given are just plain ordinary Boolean laws.
- To stress the previous point, I don't think that there is a distinct mathematical field such as "combinational logic". This is just Boolean logic. In this respect, having a Wikipedia page "Combinational logic" at the same level as other relevant pages such as "Temporal logic" for instance (which is a relevant concept) is questionable. So, my message would be: ok for a "combinational circuit" article, but not for "combinational logic".
- The emphasis on truth tables and Boolean simplifications is obsolete: in practice, these methods do not scale to non-toy examples. The relevant methods used for designing circuits are BDD (Binary Decision Diagrams), SAT solvers, etc.
- The debate "combinational vs combinatorial" is not essential. Just to mention that the argument "combinational wins by 4:1 on Google" is no longer valid. As of Nov. 2011, I see on Google 474,000 results for "combinational logic" and 291,000 results for "combinatorial logic". And it may be the case that Wikipedia's choice influences Google, who knows. — Preceding unsigned comment added by Vasywriter (talk • contribs) 17:13, 19 November 2011 (UTC)
The relevance of the debate is that old timers like myself find it very disorientating to be suddenly confronted by a new/unfamiliar term without any explanation or justification for the change. As far as the relevance of Boolean... to paraphrase Mark Twain, rumors of it's demise are greatly exaggerated. ;-) While I do mostly agree with Vasywriter, I would like to point out that the HP2100A is not a toy computer and it was entirely designed by hand using traditional Boolean Algebra, ditto for the Univac 1219. Both of which I am intimately familiar with. I would also encourage you to check out the results of the 7400 design contest http://dangerousprototypes.com/category/7400-contest/ in which people were challenged to come up with innovative gadgets using discreet logic. codeslinger 08:03, 21 November 2011 (UTC) — Preceding unsigned comment added by 184.108.40.206 (talk)
this article is miscatergorizedEdit
I just noticed that this article is listed under the "Philosophy articles" category. That is a totally inappropriate classification. Although is can be said that George Bool was himself a Philosopher; the actual use and implementation of Boolean Algebra is purely to do with the design of electronic circuits and computers software/hardware. More appropriate categories would be Computer Science, Electronics, Computer Programming, and Mathematics. codeslinger 08:17, 21 November 2011 (UTC) — Preceding unsigned comment added by 220.127.116.11 (talk)
equations are fine but notation is weirdEdit
The equations used in the article are fine -- as far as they go -- but notation is weird. While it is true that a lot of different symbolic notations are used, I would strongly suggest that this article use the more conventional/familiar symbols/notation such as those used by Verilog or VHDL. codeslinger 08:30, 21 November 2011 (UTC) — Preceding unsigned comment added by 18.104.22.168 (talk)
Combinational logic with many-valued logicEdit
If I am right, combinational logic should allow many-valued logic, as long as it is a finite-valued logic (e.g. three-valued logic), but obviously not Infinite-valued logic (real-valued logic).— TentaclesTalk or ✉ mailto:Tentacles 18:45, 24 July 2018 (UTC)
Time independence, Practice vs. TheoryEdit
Might be worth mentioning that the output of any practical combinatorial logic circuit does not instantaneously change when one of its inputs change. It takes time for the change to ripple through the circuit. 22.214.171.124 (talk) 15:34, 11 December 2019 (UTC)