Hi,
this is not an Isabelle per se question, but as there are people here versed in programming language theory, and this I think relates to the function package of Isabelle, I feel this adequate here.
http://cs.stackexchange.com/questions/58076/axiomatisation-in-the-presence-of-recursion
--
He develops the Fork calculus for reasoning about concurrent functional programs, the motivation being Concurrent ML.
In chapter 5, he writes:
First, we add a recursion operator, allowing us to define processes
with infinite behaviour. Recursion is not difficult to deal with
(thanks to the use of operational semantics), except that the
axiomatisation cannot be shown complete in presence of recursion.
There is no literature reference here, so I ask you: where can I read about why recursion makes a programming language's axiomatisation cannot be proved complete, and in precisely what meaning?
--
Can you clarify what you mean by the axiomatization of a programming language? I'm assuming it's because, once there is recursion, there are programs which halt for which there exist no proofs that they halt, but I can't be sure not knowing what exactly the completeness is talking about here. - jmite
--
Do I understand correctly that the above remark about adding recursion to a language makes any axiomatisation incomplete is true
for the same reason that makes it impossible to create a general function definition in a higher order logic of total functions, without the need to supply a termination proof in general?
- Gergely