69 research outputs found

    Boltzmann samplers for random generation of lambda terms

    Get PDF
    Randomly generating structured objects is important in testing and optimizing functional programs, whereas generating random ′l'l-terms is more specifically needed for testing and optimizing compilers. For that a tool called QuickCheck has been proposed, but in this tool the control of the random generation is left to the programmer. Ten years ago, a method called Boltzmann samplers has been proposed to generate combinatorial structures. In this paper, we show how Boltzmann samplers can be developed to generate lambda-terms, but also other data structures like trees. These samplers rely on a critical value which parameters the main random selector and which is exhibited here with explanations on how it is computed. Haskell programs are proposed to show how samplers are actually implemented

    How to generate an object under an ordinary Boltzmann distribution via an exponential Boltzmann sampler

    Full text link
    This short note presents an efficient way to derive from an exponential Boltzmann sampler a ordinary Boltzmann sample

    Random Generation and Enumeration of Accessible Determinisitic Real-time Pushdown Automata

    Get PDF
    This papers presents a general framework for the uniform random generation of deterministic real-time accessible pushdown automata. A polynomial time algorithm to randomly generate a pushdown automaton having a fixed stack operations total size is proposed. The influence of the accepting condition (empty stack, final state) on the reachability of the generated automata is investigated.Comment: Frank Drewes. CIAA 2015, Aug 2015, Umea, Sweden. Springer, 9223, pp.12, 2015, Implementation and Application of Automata - 20th International Conferenc
    • …
    corecore