5 ms·
Why is it a calculus and not an algebra? Relational algebra is an algebra for example.
by 0xdeadbeefbabe 10y ago
Why is it a calculus and not an algebra?
Relational algebra is an algebra for example.
- virmundi 10y agoI believe it comes down to procedural vs declarative. Relational Algebra is fairly procedural (do X, then Y, then Z). Where as Relational Calculus(https://www.tutorialcup.com/dbms/relational-calculus.htm https://www.tutorialcup.com/dbms/relational-calculus.htm) is declarative.
- tel 10y ago"Algebra" and "calculus" are often used for historical reasons rather than technical ones. But as it were, LC cannot be expressed as a universal algebra. Not quite. The lambda terms introduce local binding which throws off an algebraic representation. The best you can do is have a (sorted) representation which includes free variables and then have a quotient of that algebra be LC. Even that doesn't quite work, though, since `x` is not a valid LC term.
- 0xdeadbeefbabe 10y ago> The lambda terms introduce local binding which throws off an algebraic representation. Doesn't rho for renaming in relational algebra also have local binding? It's good to know the reasons are historical though.
- tel 10y agoCould be that the relational algebra isn't so much an algebra either. Also could be that the renaming isn't really part of the "core" algebra. I'm not in particular familiar with the relational algebra, though.
- mkehrt 10y agoI'm not sure "calculus" has a technical meaning in the same sense "algebra" does, and, as mentioned by tel, the use is mostly historical. But note that other historical simple languages such as combinator systems are often referred to as calculi, like the SKI-calculus. In modern programming language theory, formal models of languages are informally referred to as "calculi" as well, mostly as a reference to the lambda calculus.
- tel 10y agoInterestingly, the SKI calculus is an algebra.
- fmap 10y agoBarendregt, in his famous book on the lambda calculus has a great justification: once you look at models for the lambda calculus you are forced to introduce notions from analysis, such as continuity. The arguments and proofs would feel right at home in a book on classical analysis. So it's the models that put the calculus in lambda calculus. :) Of course the real answer is probably history, but it's much more interesting to say that you can simply find connections to calculus if you look hard enough...