This paper points out an error of Parigot's proof of strong normalization of second order classical natural deduction by the CPS-translation, discusses erasing-continuation of the CPS-translation, and corrects that proof by using the notion of augmentations.
This paper shows undecidability of type-checking and typeinference problems in domain-free typed lambda-calculi with existential types: a negation and conjunction fragment, and an implicational fragment. These are proved by reducing type-checking and type-inference problems of the domain-free polymorphic typed lambda-calculus to those of the lambda-calculi with existential types by continuation passing style translations.
Separation logic is successful for software verification in both theory and practice. Decision procedure for symbolic heaps is one of the key issues. This paper proposes a cyclic proof system for symbolic heaps with general form of inductive definitions, and shows its soundness and completeness. The decision procedure for entailments of symbolic heaps with inductive definitions is also given. Decidability for entailments of symbolic heaps with inductive definitions is an important question. Completeness of cyclic proof systems is also an important question. The results of this paper answer both questions. The decision procedure is feasible since it is nondeterministic double-exponential time complexity.We define F (m) as obtained from a formula F by replacing every inductive predicate P by P (m) .We define ( = (T 1 , T 2 )) as t1∈T1,t2∈T2,t1 ≡t2 t 1 = t 2 . We write x = T for ( = ({x}, T )).We define ( = (T )) as ( = (T ∪ {nil}, T ∪ {nil})).
SemanticsThis subsection gives semantics of the language. We define the following structure: Val = N , Locs = {x ∈ N |x > 0}, Heaps = Locs → f in Val n cell , Stores = Vars → Val. Each s ∈ Stores is called a store. Each h ∈ Heaps is called a heap, and Dom(h) is the domain of h, and Range(h) is the range of h. We write h = h 1 + h 2 when Dom(h 1 ) and Dom(h 2 ) are disjoint and the graph of h is the union of those of h 1 and h 2 . A pair (s, h) is called a heap model, which means a memory state. The value s(x) means the value of the variable x in the model (s, h). Each value a ∈ Dom(h) means an address, and the value of h(a) is the content of the memory cell at address a in the heap h. We suppose each memory cell has n cell elements as its content.The interpretation s(t) for any term t is defined as 0 for nil and s(x) for the variable x.For a formula F we define the interpretation s, h |= F as follows.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.