First-Order Universality for Real Programs [chapter]

Thomas Anberrée
2009 Lecture Notes in Computer Science  
J. Raymundo Marcial-Romero and M. H. Escardó described a functional programming language with an abstract data type real for the real numbers and a non-deterministic operator rtest : real → bool. We show that this language is universal at first order, as conjectured by these authors: all computable, first-order total functions on the real numbers are definable. To be precise, we show that each computable function f : R → R we consider is the extension of the denotation M f of some program M f :
more » ... real → real, in a model based on powerdomains, described in previous work. Whereas this semantics is only an approximate one, in the sense that programs may have a denotation strictly below their true outputs, our result shows that, to compute a given function, it is in fact always possible to find a program with a faithful denotation. We briefly indicate how our proof extends to show that functions taken from a large class of computable, first-order partial functions in several arguments are definable.
doi:10.1007/978-3-642-03073-4_1 fatcat:54awoahd5batdj5q63dd56jkle