365 research outputs found

    Inductive assertions patterns for recursive procedures

    Get PDF

    Ignorance in the Relational Model

    Get PDF
    We hypothesize that an extension-with-conditioning of Dempster-Shafer theory is suitable for encoding uncertainty and ignorance in the Relational Model. We present a formal and well-motivated definition of conditioning, and show the spirit of the required change in the Relational Model and some results that then follow. It remains to be investigated whether these results are satisfactory

    An exercise in transformational programming: Backtracking and Branch-and-Bound

    Get PDF
    We present a formal derivation of program schemes that are usually called Backtracking programs and Branch-and-Bound programs. The derivation consists of a series of transformation steps, specifically algebraic manipulations, on the initial specification until the desired programs are obtained. The well-known notions of linear recursion and tail recursion are extended, for structures, to elementwise linear recursion and elementwise tail recursion; and a transformation between them is derived too

    Z-style notation for Probabilities

    Get PDF
    A notation for probabilities is proposed that differs from the traditional, conventional notation by making explicit the domains and bound variables involved. The notation borrows from the Z notation, and lends itself well to calculational manipulations, with a smooth transition back and forth to set and predicate notation

    A correctness proof of sorting by means of formal procedures

    Get PDF
    We consider a recursive sorting algorithm in which, in each invocation, a new variable and a new procedure (using the variable globally) are defined and the procedure is passed to recursive calls. This algorithm is proved correct with Hoare-style pre- and postassertions. We also discuss the same algorithm expressed as a functional program

    Datatype Laws Without Signatures

    Get PDF
    Using the well-known categorical notion of `functor' one may define the concept of datatype (algebra) without being forced to introduce a signature, that is, names and typings for the individual sorts (types) and operations involved. This has proved to be advantageous for those theory developments where one is not interested in the syntactic appearance of an algebra. The categorical notion of `transformer' developed in this paper allows the same approach to laws: without using signatures one can define the concept of law for datatypes (lawful algebras), and investigate the equational specification of datatypes in a syntax-free way. A transformer is a special kind of functor and also a natural transformation on the level of dialgebras. Transformers are quite expressive, satisfy several closure properties, and are related to naturality and Wadler's Theorems For Free. In fact, any colimit is an initial lawful algebra

    Possible Histories: A way to model Context-Aware Preferences

    Get PDF
    Nowadays more and more information becomes available in digital form. To be able to guide users through this wealth of information, a possibility is to only provide the user with relevant information, where relevancy is determined by the preferences of the user. To determine the precise relation between relevancy and preferences, we somehow need to formalize both concepts. This paper proposes a way to formalize the preferences of a user by grounding them in possible histories of the user. We explore this technique and its relations to other possible models

    Functional programming with bananas, lenses, envelopes and barbed wire

    Get PDF
    We develop a calculus for lazy functional programming based on recursion operators associated with data type definitions. For these operators we derive various algebraic laws that are useful in deriving and manipulating programs. We shall show that all example functions in Bird and Wadler's Introduction to Functional Programming can be expressed using these operators

    Monadic Maps and Folds for Arbitrary Datatypes

    Get PDF
    Each datatype constructor comes equiped not only with a so-called map and fold (<i>catamorphism</i>), as is widely known, but, under some condition, also with a kind of map and fold that are related to an arbitrary given monad.\ud \ud This result follows from the preservation of initiality under lifting from the category of algebras in a given category to a certain other category of algebras in the Kleisli category related to the monad
    corecore