122 research outputs found

    Rank Order Filters and Priority Queues

    Get PDF
    A derivation of a parallel algorithm for rank order filtering is presented. Both derivation and result differ from earlier designs: the derivations are less complicated and the result allows a number of different implementations. The same derivation is used to design a collection of priority queues. Both filters and priority queues are highly efficient: they have constant response time and small latency

    Quicksort in Constant Space

    Get PDF
    An in situ sorting algorithm, based on Quicksort, is presented with its proof of correctness. The proof illustrates a concise and elegant way to represent a sequence that has been partially sorted by Quicksort. A list representation turns out to be well suited to this purpose, and the discussion is entirely in terms of lists

    Refining Nodes and Edges of State Machines

    No full text
    State machines are hierarchical automata that are widely used to structure complex behavioural specifications. We develop two notions of refinement of state machines, node refinement and edge refinement. We compare the two notions by means of examples and argue that, by adopting simple conventions, they can be combined into one method of refinement. In the combined method, node refinement can be used to develop architectural aspects of a model and edge refinement to develop algorithmic aspects. The two notions of refinement are grounded in previous work. Event-B is used as the foundation for our refinement theory and UML-B state machine refinement influences the style of node refinement. Hence we propose a method with direct proof of state machine refinement avoiding the detour via Event-B that is needed by UML-B

    Verification conditions for source-level imperative programs

    Get PDF
    This paper is a systematic study of veriļ¬cation conditions and their use in the context of program veriļ¬cation. We take Hoare logic as a starting point and study in detail how a veriļ¬cation conditions generator can be obtained from it. The notion of program annotation is essential in this process. Weakest preconditions and the use of updates are also studied as alternative approaches to veriļ¬cation conditions. Our study is carried on in the context of a While language. Important extensions to this language are considered toward the end of the paper. We also brieļ¬‚y survey modern program veriļ¬cation tools and their approaches to the generation of veriļ¬cation conditions.FundaĆ§Ć£o para a CiĆŖncia e a Tecnologia (FCT

    De didactiek van het programmeren

    Get PDF

    On the decomposition of sequences into ascending subsequences

    No full text
    No abstract

    Mergeable priority queues and heaps

    No full text
    Apart from the introduction, which is about Frans Kruseman Aretz, we present a number of priority queue implementations, all in terms of heaps

    Trace theory and the specification of concurrent systems

    No full text
    In this paper we show how trace theory can be used to describe the behaviour of concurrent systems . We present a short introduction to trace theory. We also discuss a program notation that specifies the trace set of a component. As an example we derive a solution for one of the problems of the STC Workshop [5]

    The animal in morality. Justifying duties to animals in Kantian moral philosophy

    No full text
    This dissertation investigates the issue of our moral duties to animals in the context of Kantian moral philosophy. Kantian arguments promise a fundamental and neutral justification of moral duties. Kantians traditionally hold that rational capacities that only humans seem to possess are necessary for moral status. This dissertation challenges this view. It is argued that if Kantian arguments justify duties to others at all, they also justify duties to animals. The first part of the dissertation argues that the Kantian view of the nature and justification of moral duty does not necessarily imply that we have duties to only those who can act morally (moral agents). Moral duties are regarded as categorical requirements, which the agent has to act on regardless of whether this fulfills her other desires or is in her overall interest. Such duties are justified with a transcendental argument, designed to show that moral agents cannot rationally deny having these duties. Moral agents are consequently regarded as capable of guiding their conduct on the basis of principles that they recognize to be rationally required. However, it does not follow that moral principles require us to respect only moral agents. Respect for moral principles may imply an indirect duty not to undermine the capacity to act on them, but not a direct duty to respect moral agents as a whole, including their ability to act for nonmoral purposes (such as alleviating pain, or caring for loved ones). The question is what moral principles moral agents have to accept. The second part of this dissertation deals with arguments for the claim that all agents rationally have to accept certain moral principles (by e.g. Korsgaard and Gewirth). The third part concerns arguments for moral principles from the perspective of agents who interact in specific ways (e.g. hold each other responsible) (by e.g. Apel and Darwall). It is shown that agentsā€™ desires for nonmoral purposes play a more important role in both types of argument than has been traditionally recognized. They must be regarded as the basis of sufficient reasons and valid moral claims unless there are more important countervailing considerations (such as conflicting purposes of the same or other agents). Otherwise, there may be formal rational requirements (e.g. consistency), but no substantive moral principles: reason would not prescribe specific actions for their own sake. As we act, and make moral claims on one another, on a basis that we seem to share with certain animals (namely, desiring to attain purposes), we equally have direct duties to them. We do have different duties to moral agents and animals. We have to take moral agentsā€™ own claims about their good and the right way to act seriously. In the case of animals, advocates have to represent their viewpoint in debates on how we should act. This should make us reconsider the ways in which we currently use animals, but also casts a different light on the nature and source of our own moral claim
    • ā€¦
    corecore