Addition is well defined, that is if x=x’ and y=y’ then x+y = x’+y’. Not every computable transformation has this property. Consider the non-well-defined function <+> on fractions given by a/b <+> c/d = (a+c)/(b+d)
We know that 3⁄9 = 1⁄3 and 2⁄5 = 4⁄10 but 7⁄19 != 3⁄8.
If we consider “a logic” to be a set of rules for manipulaing strings, then we can come up with some axioms for classical logic that characterize it uniquely. That is to say, we can logically pinpoint classical logic (say, with the axioms of boolean algebra) just like we can we can logically pinpoint the natural numbers (with the peano axioms).
I’d say that your “non-well-defined function on fractions” isn’t actually a function on fractions at all; it’s a function on fractional expressions that fails to define a function on fractions.
Fair enough. We could have “number expressions” which denote the same number, like “ssss0“, “4”, “2+2”, “2*2”. Then the question of well-definedness is whether our method of computing addition gives the same result for each of these different number expressions.
“Why does 2+2 come out the same way each time?”
Thoughts that seem relevant:
Addition is well defined, that is if x=x’ and y=y’ then x+y = x’+y’. Not every computable transformation has this property. Consider the non-well-defined function <+> on fractions given by a/b <+> c/d = (a+c)/(b+d) We know that 3⁄9 = 1⁄3 and 2⁄5 = 4⁄10 but 7⁄19 != 3⁄8.
We have the Church-Rosser Theorem http://en.wikipedia.org/wiki/Church%E2%80%93Rosser_theorem as a sort of guarantee (in the lambda calculus) that if I compute one way and you compute another, then we can eventually reach common ground.
If we consider “a logic” to be a set of rules for manipulaing strings, then we can come up with some axioms for classical logic that characterize it uniquely. That is to say, we can logically pinpoint classical logic (say, with the axioms of boolean algebra) just like we can we can logically pinpoint the natural numbers (with the peano axioms).
I’d say that your “non-well-defined function on fractions” isn’t actually a function on fractions at all; it’s a function on fractional expressions that fails to define a function on fractions.
Fair enough. We could have “number expressions” which denote the same number, like “ssss0“, “4”, “2+2”, “2*2”. Then the question of well-definedness is whether our method of computing addition gives the same result for each of these different number expressions.