5 research outputs found

    VERIFYING THE UNIFICATION ALGORITHM IN LCF

    Get PDF
    Manna and Waldinger's theory of substitutions and unification has been verified using the Cambridge LCF theorem prover. A proof of the monotonicity of substitution is presented in detail, as an example of interaction with LCF. Translating the theory into LCF's domain-theoretic logic is largely straightforward. Well-founded induction on a complex ordering is translated into nested structural inductions. Correctness of unification is expressed using predicates for such properties as idempotence and most-generality. The verification is presented as a series of lemmas. The LCF proofs are compared with the original ones, and with other approaches. It appears difficult to find a logic that is both simple and flexible, especially for proving termination

    Bicontexts and structural induction

    Get PDF
    This thesis introduces and explores the notion of bicontext, an order-enriched category equipped with a unary endofunctor of order two called reverse. The purpose is threefold. First, the important categories that arise in Scott-Strachey denotational semantics have this additional structure, where by the constructions used to solve "data-type equations" are both limits and colimits simultaneously. Second, it yields a pleasant "set-theoretic" treatment of algebraic data-types in terms of bicontexts of (1, 1) relations rather than pairs of continuous functions. The theory provides a general way of relating bicontexts which serves to connect these particular ones. Third, the least solutions of data-type equations often have an associated principle of structural induction. Properties in such solutions become arrows in the appropriate bicontext, making the defining functor directly applicable to them. In this way the structural induction can be derived systematically from the functor
    corecore