347,881 research outputs found

    Finding The Lazy Programmer's Bugs

    Get PDF
    Traditionally developers and testers created huge numbers of explicit tests, enumerating interesting cases, perhaps biased by what they believe to be the current boundary conditions of the function being tested. Or at least, they were supposed to. A major step forward was the development of property testing. Property testing requires the user to write a few functional properties that are used to generate tests, and requires an external library or tool to create test data for the tests. As such many thousands of tests can be created for a single property. For the purely functional programming language Haskell there are several such libraries; for example QuickCheck [CH00], SmallCheck and Lazy SmallCheck [RNL08]. Unfortunately, property testing still requires the user to write explicit tests. Fortunately, we note there are already many implicit tests present in programs. Developers may throw assertion errors, or the compiler may silently insert runtime exceptions for incomplete pattern matches. We attempt to automate the testing process using these implicit tests. Our contributions are in four main areas: (1) We have developed algorithms to automatically infer appropriate constructors and functions needed to generate test data without requiring additional programmer work or annotations. (2) To combine the constructors and functions into test expressions we take advantage of Haskell's lazy evaluation semantics by applying the techniques of needed narrowing and lazy instantiation to guide generation. (3) We keep the type of test data at its most general, in order to prevent committing too early to monomorphic types that cause needless wasted tests. (4) We have developed novel ways of creating Haskell case expressions to inspect elements inside returned data structures, in order to discover exceptions that may be hidden by laziness, and to make our test data generation algorithm more expressive. In order to validate our claims, we have implemented these techniques in Irulan, a fully automatic tool for generating systematic black-box unit tests for Haskell library code. We have designed Irulan to generate high coverage test suites and detect common programming errors in the process

    The structure of one-relator relative presentations and their centres

    Full text link
    Suppose that G is a nontrivial torsion-free group and w is a word in the alphabet G\cup\{x_1^{\pm1},...,x_n^{\pm1}\} such that the word w' obtained from w by erasing all letters belonging to G is not a proper power in the free group F(x_1,...,x_n). We show how to reduce the study of the relative presentation \^G= to the case n=1. It turns out that an "n-variable" group \^G can be constructed from similar "one-variable" groups using an explicit construction similar to wreath product. As an illustration, we prove that, for n>1, the centre of \^G is always trivial. For n=1, the centre of \^G is also almost always trivial; there are several exceptions, and all of them are known.Comment: 15 pages. A Russian version of this paper is at http://mech.math.msu.su/department/algebra/staff/klyachko/papers.htm . V4: the intoduction is rewritten; Section 1 is extended; a short introduction to Secton 5 is added; some misprints are corrected and some cosmetic improvements are mad

    On the canonical degrees of curves in varieties of general type

    Full text link
    A widely believed conjecture predicts that curves of bounded geometric genus lying on a variety of general type form a bounded family. One may even ask whether the canonical degree of a curve CC in a variety of general type is bounded from above by some expression aχ(C)+ba\chi(C)+b, where aa and bb are positive constants, with the possible exceptions corresponding to curves lying in a strict closed subset (depending on aa and bb). A theorem of Miyaoka proves this for smooth curves in minimal surfaces, with a>3/2a>3/2. A conjecture of Vojta claims in essence that any constant a>1a>1 is possible provided one restricts oneself to curves of bounded gonality. We show by explicit examples coming from the theory of Shimura varieties that in general, the constant aa has to be at least equal to the dimension of the ambient variety. We also prove the desired inequality in the case of compact Shimura varieties.Comment: 10 pages, to appear in Geometric and Functional Analysi

    Gripe Sites & Trademark User Rights: Lessons from Canada’s Cooperstock Case

    Get PDF
    This Chapter is concerned with the nature of trademarks as vehicles of expression. It takes, as its lesson study, the unfortunate Canadian Federal Court case of United Airlines v. Cooperstock in which a disgruntled United passenger quite spectacularly failed in his efforts to defend a trademark parody on his consumer complaints “gripe” site. The case demonstrates the risks of relying on trademark law’s internal limits and implicit exceptions to define the boundaries of the trademark owner’s control. I argue, first, that the case therefore underscores the need for explicit statutory exceptions to ensure breathing space for parody, criticism, and other fair and expressive uses of protected marks. Second, the case reveals the need for a positive conception of “user rights” in the trademark scheme parallel to that already recognized in Canada’s copyright law. But finally, I argue, if user rights are to have any real traction in the legal landscape of trademark law, a fuller appreciation is needed of the communicative and social value of marks—not just as indicators of source and incubators of commercially valuable meaning, but also as public sites of dialogic engagement and discursive struggle. Canada’s United case is a paradigmatic example—and a cautionary tale—of what happens when owners’ rights are overprotected, users’ rights are disregarded, and trademark limits are irresolutely drawn

    Submission to South African Parliament\u27s Portfolio Committee on Trade and Industry - Re: Copyright Amendment Bill [B13B - 2017]

    Get PDF
    This submission is on behalf of the Global Expert Network on Copyright User Rights. The Network is an association of over 100 copyright academics from over 30 countries who conduct research and offer technical assistance to governments and stakeholders on the reform of copyright limitations and exceptions to promote the public interest. Professor Sean Flynn, Counsel of Record, is a former Law Clerk for the late Chief Justice Arthur Chaskalson, is currently a Senior Research Fellow at the University of Cape Town IP Unit, and has been conducting research and leading academic projects in South Africa for over two decades. Members of the Global Expert Network on Copyright User Rights that were consulted on this submission include: Patricia Aufderheide, American University Carys Craig, Osgoode Hall Law School, York University, Canada Niva Elkin Koren, Tel-Aviv University Christophe Geiger, University of Strasbourg (France) Lucie Guibault, Schulich School of Law, Dalhousie University, Canada Peter Jaszi, American University Washington College of Law Ariel Katz, University of Toronto Thomas Margoni, Faculty of Law, KU Leuven João Pedro Quintais, Institute for Information Law, University of Amsterdam Allan Rocha, Federal University of Rio De Janeiro Matthew Sag, Loyola University of Chicago Pam Samuelson, Berkeley Law School Arul George Scaria, National Law University, Delhi Tobias Schonwetter, University of Cape Town IP Unit Martin Senftleben, Institute for Information Law, University of Amsterdam Peter Yu, Texas A&M School of Law REQUEST TO PRESENT AT PUBLIC HEARING We request to be represented by our counsel of record, Professor Sean Flynn, at the public hearings on the Bill scheduled on Wednesday, 4 August, and Thursday, 5 August 2021. SUMMARY OF OUR COMMENTS We provide this comment on Clause 13, section 12A of the Copyright Amendment Bill [B13B-2017]. Section 12A is an open general exception for “fair use” of copyrighted works. This provision is largely an updating of South Africa’s current general exception for “fair dealing” with a copyrighted work. The primary improvements of Section 12A over the current fair dealing exception are (1) to open the list purposes to which the exception can apply by virtue of including the words “such as” before the list of authorized purposes, and (2) providing an explicit balancing test to determine whether a particular use is fair. Benefits of the hybrid approach In our view, the proposed fair use provision combined with the specific list of exceptions provides South Africa the “best of both worlds” combining openness and predictability. The open fair use exception makes the exceptions future-proof. It permits the law to adapt to new uses, technologies, and purposes which may not be anticipated in the specific exceptions. The list of specific exceptions in Section 12B provides a higher degree of predictability for the set of uses long authorized in South Africa copyright law. Compliance with international law This hybrid approach to exceptions is fully compliant with international law. The so-called “three step” test does not prohibit open general exceptions that operate through case by case application of a specifically delineated balancing test. At least 11 countries have similar provisions in their law and none have been challenged. We include below further explanations of each of these points

    Adjunctions for exceptions

    Full text link
    An algebraic method is used to study the semantics of exceptions in computer languages. The exceptions form a computational effect, in the sense that there is an apparent mismatch between the syntax of exceptions and their intended semantics. We solve this apparent contradiction by efining a logic for exceptions with a proof system which is close to their syntax and where their intended semantics can be seen as a model. This requires a robust framework for logics and their morphisms, which is provided by categorical tools relying on adjunctions, fractions and limit sketches.Comment: In this Version 2, minor improvements are made to Version

    States and exceptions considered as dual effects

    Full text link
    In this paper we consider the two major computational effects of states and exceptions, from the point of view of diagrammatic logics. We get a surprising result: there exists a symmetry between these two effects, based on the well-known categorical duality between products and coproducts. More precisely, the lookup and update operations for states are respectively dual to the throw and catch operations for exceptions. This symmetry is deeply hidden in the programming languages; in order to unveil it, we start from the monoidal equational logic and we add progressively the logical features which are necessary for dealing with either effect. This approach gives rise to a new point of view on states and exceptions, which bypasses the problems due to the non-algebraicity of handling exceptions

    Thermodynamics and criticality of su(mm) spin chains of Haldane-Shastry type

    Full text link
    We study the thermodynamics and critical behavior of su(mm) spin chains of Haldane-Shastry type at zero chemical potential, both in the AN−1A_{N-1} and BCNBC_N cases. We evaluate in closed form the free energy per spin for arbitrary values of mm, from which we derive explicit formulas for the energy, entropy and specific heat per spin. In particular, we find that the specific heat features a single Schottky peak, whose temperature is well approximated for mâ‰Č10m\lesssim10 by the corresponding temperature for an mm-level system with uniformly spaced levels. We show that at low temperatures the free energy per spin of the models under study behaves as that of a one-dimensional conformal field theory with central charge c=m−1c=m-1 (with the only exception of the Frahm-Inozemtsev chain with zero value of its parameter). However, from a detailed study of the ground state degeneracy and the low-energy excitations, we conclude that these models are only critical in the antiferromagnetic case, with a few exceptions that we fully specify.Comment: 12 pages, 2 figure

    Explicit Representation of Exception Handling in the Development of Dependable Component-Based Systems

    Get PDF
    Exception handling is a structuring technique that facilitates the design of systems by encapsulating the process of error recovery. In this paper, we present a systematic approach for incorporating exceptional behaviour in the development of component-based software. The premise of our approach is that components alone do not provide the appropriate means to deal with exceptional behaviour in an effective manner. Hence the need to consider the notion of collaborations for capturing the interactive behaviour between components, when error recovery involves more than one component. The feasibility of the approach is demonstrated in terms of the case study of the mining control system
    • 

    corecore