English
Related papers

Related papers: Polymorphic Coverage Types

200 papers

This paper improves the treatment of equality in guarded dependent type theory (GDTT), by combining it with cubical type theory (CTT). GDTT is an extensional type theory with guarded recursive types, which are useful for building models of…

Logic in Computer Science · Computer Science 2017-10-09 Lars Birkedal , Aleš Bizjak , Ranald Clouston , Hans Bugge Grathwohl , Bas Spitters , Andrea Vezzosi

Session types provide a principled approach to typed communication protocols that guarantee type safety and protocol fidelity. Formalizations of session-typed communication are typically based on process calculi, concurrent lambda calculi,…

Programming Languages · Computer Science 2023-08-15 Hannes Saffrich , Peter Thiemann

Branch coverage of source code is a very widely used test criterion. Moreover, branch coverage is a similar problem to line coverage, MC/DC and the coverage of assertion violations, certain runtime errors and various other types of test…

Software Engineering · Computer Science 2021-05-13 Nicky Williams

Type qualifiers offer a lightweight mechanism for enriching existing type systems to enforce additional, desirable, program invariants. They do so by offering a restricted but effective form of subtyping. While the theory of type qualifiers…

Programming Languages · Computer Science 2024-02-27 Edward Lee , Yaoyu Zhao , James You , Kavin Satheeskumar , Ondřej Lhoták , Jonathan Brachthäuser

Metamorphic testing (MT) is a simple yet effective technique to alleviate the oracle problem in software testing. The underlying idea of MT is to test a software system by checking whether metamorphic relations (MRs) hold among multiple…

Software Engineering · Computer Science 2024-12-31 An Fu , Chang-ai Sun , Jiaming Zhang , Huai Liu

Erlang's dynamic typing discipline can lead to runtime errors that persist even after process restarts. Some of these runtime errors could be prevented through static type checking. While Erlang provides a type specification language, the…

Programming Languages · Computer Science 2026-03-24 Albert Schimpf , Stefan Wehr , Annette Bieniusa

We present the design, implementation, and foundation of a verifier for higher-order functional programs with generics and recursive data types. Our system supports proving safety and termination using preconditions, postconditions and…

Logic in Computer Science · Computer Science 2020-03-25 Jad Hamza , Nicolas Voirol , Viktor Kunčak

We consider type inference for guarded recursive data types (GRDTs) -- a recent generalization of algebraic data types. We reduce type inference for GRDTs to unification under a mixed prefix. Thus, we obtain efficient type inference.…

Programming Languages · Computer Science 2007-05-23 Peter J. Stuckey , Martin Sulzmann

Automating unit test generation remains a significant challenge, particularly for complex methods in real-world projects. While Large Language Models (LLMs) have made strides in code generation, they struggle to achieve high branch coverage…

Software Engineering · Computer Science 2025-09-01 Sijia Gu , Noor Nashid , Ali Mesbah

In this paper we show how prescritive type checking and constraint solving can be combined to increase automation during software verification. We do so by defining a type system and implementing a typechecker for {log} (read `setlog'), a…

Logic in Computer Science · Computer Science 2025-01-22 Maximiliano Cristiá , Gianfranco Rossi

We revisit the problem of constructing predictive confidence sets for which we wish to obtain some type of conditional validity. We provide new arguments showing how ``split conformal'' methods achieve near desired coverage levels with high…

Statistics Theory · Mathematics 2025-03-04 John C. Duchi

Property-based testing (PBT) relies on generators for random test cases, often constructed using embedded domain specific languages, which provide expressive combinators for building and composing generators. The effectiveness of PBT…

Programming Languages · Computer Science 2026-04-08 Cynthia Richey , Joseph W. Cutler , Harrison Goldstein , Benjamin C. Pierce

Testing is an essential part of software development. Test generation tools attempt to automate the otherwise labor-intensive task of test creation, but generating high-coverage tests remains challenging. This paper proposes CoverUp, a…

Software Engineering · Computer Science 2025-05-12 Juan Altmayer Pizzorno , Emery D. Berger

The framework Pure Type System (PTS) offers a simple and general approach to designing and formalizing type systems. However, in the presence of dependent types, there often exist certain acute problems that make it difficult for PTS to…

Programming Languages · Computer Science 2017-03-28 Hongwei Xi

We introduce a new two-sided type system for verifying the correctness and incorrectness of functional programs with atoms and pattern matching. A key idea in the work is that types should range over sets of normal forms, rather than sets…

Programming Languages · Computer Science 2026-05-11 Celia Mengyue Li , Sophie Pull , Steven Ramsay

We present an algorithm for tests generation tools based on symbolic execution. The algorithm is supposed to help in situations, when a tool is repeatedly failing to cover some code by tests. The algorithm then provides the tool a necessary…

Symbolic Computation · Computer Science 2011-12-21 Marek Trtík

Automated test case generation tools help businesses to write tests and increase the safety net provided by high regression test coverage when making code changes. Test generation needs to cover as much as possible of the uncovered code…

Software Engineering · Computer Science 2023-01-02 Matthias Güdemann , Peter Schrammel

Practical checkers based on refinement types use the combination of implicit semantic sub-typing and parametric polymorphism to simplify the specification and automate the verification of sophisticated properties of programs. However, a…

Programming Languages · Computer Science 2022-07-13 Michael Borkowski , Niki Vazou , Ranjit Jhala

We present a new technique called type targeted testing, which translates precise refinement types into comprehensive test-suites. The key insight behind our approach is that through the lens of SMT solvers, refinement types can also be…

Programming Languages · Computer Science 2017-08-29 Eric L. Seidel , Niki Vazou , Ranjit Jhala

This paper presents a novel approach for augmenting proof-based verification with performance-style analysis of the kind employed in state-of-the-art model checking tools for probabilistic systems. Quantitative safety properties usually…

Logic in Computer Science · Computer Science 2009-12-11 Ukachukwu Ndukwu