277 research outputs found

    Delta-Decision Procedures for Exists-Forall Problems over the Reals

    Full text link
    Solving nonlinear SMT problems over real numbers has wide applications in robotics and AI. While significant progress is made in solving quantifier-free SMT formulas in the domain, quantified formulas have been much less investigated. We propose the first delta-complete algorithm for solving satisfiability of nonlinear SMT over real numbers with universal quantification and a wide range of nonlinear functions. Our methods combine ideas from counterexample-guided synthesis, interval constraint propagation, and local optimization. In particular, we show how special care is required in handling the interleaving of numerical and symbolic reasoning to ensure delta-completeness. In experiments, we show that the proposed algorithms can handle many new problems beyond the reach of existing SMT solvers

    Computable decision making on the reals and other spaces via partiality and nondeterminism

    Full text link
    Though many safety-critical software systems use floating point to represent real-world input and output, programmers usually have idealized versions in mind that compute with real numbers. Significant deviations from the ideal can cause errors and jeopardize safety. Some programming systems implement exact real arithmetic, which resolves this matter but complicates others, such as decision making. In these systems, it is impossible to compute (total and deterministic) discrete decisions based on connected spaces such as R\mathbb{R}. We present programming-language semantics based on constructive topology with variants allowing nondeterminism and/or partiality. Either nondeterminism or partiality suffices to allow computable decision making on connected spaces such as R\mathbb{R}. We then introduce pattern matching on spaces, a language construct for creating programs on spaces, generalizing pattern matching in functional programming, where patterns need not represent decidable predicates and also may overlap or be inexhaustive, giving rise to nondeterminism or partiality, respectively. Nondeterminism and/or partiality also yield formal logics for constructing approximate decision procedures. We implemented these constructs in the Marshall language for exact real arithmetic.Comment: This is an extended version of a paper due to appear in the proceedings of the ACM/IEEE Symposium on Logic in Computer Science (LICS) in July 201

    Relaxed decidability and the robust semantics of Metric Temporal Logic

    Get PDF
    Relaxed notions of decidability widen the scope of automatic verification of hybrid systems. In quasi-decidability and δ\delta-decidability, the fundamental compromise is that if we are willing to accept a slight error in the algorithm\u27s answer, or a slight restriction on the class of problems we verify, then it is possible to obtain practically useful answers. This paper explores the connections between relaxed decidability and the robust semantics of Metric Temporal Logic formulas. It establishes a formal equivalence between the robustness degree of MTL specifications, and the imprecision parameter δ\delta used in δ\delta-decidability when it is used to verify MTL properties. We present an application of this result in the form of an algorithm that generates new constraints to the δ\delta-decision procedure from falsification runs, which speeds up the verification run. We then establish new conditions under which robust testing, based on the robust semantics of MTL, is in fact a quasi-semidecision procedure. These results allow us to delimit what is possible with fast, robustness-based methods, accelerate (near-)exhaustive verification, and further bridge the gap between verification and simulation

    Investigation, Development, and Evaluation of Performance Proving for Fault-tolerant Computers

    Get PDF
    A number of methodologies for verifying systems and computer based tools that assist users in verifying their systems were developed. These tools were applied to verify in part the SIFT ultrareliable aircraft computer. Topics covered included: STP theorem prover; design verification of SIFT; high level language code verification; assembly language level verification; numerical algorithm verification; verification of flight control programs; and verification of hardware logic

    On a semismooth* Newton method for solving generalized equations

    Get PDF
    In the paper, a Newton-type method for the solution of generalized equations (GEs) is derived, where the linearization concerns both the single-valued and the multivalued part of the considered GE. The method is based on the new notion of semismoothness\ast, which, together with a suitable regularity condition, ensures the local superlinear convergence. An implementable version of the new method is derived for a class of GEs, frequently arising in optimization and equilibrium models. © 2021 Society for Industrial and Applied Mathematic

    A Formal Proof of PAC Learnability for Decision Stumps

    Full text link
    We present a formal proof in Lean of probably approximately correct (PAC) learnability of the concept class of decision stumps. This classic result in machine learning theory derives a bound on error probabilities for a simple type of classifier. Though such a proof appears simple on paper, analytic and measure-theoretic subtleties arise when carrying it out fully formally. Our proof is structured so as to separate reasoning about deterministic properties of a learning function from proofs of measurability and analysis of probabilities.Comment: 13 pages, appeared in Certified Programs and Proofs (CPP) 202

    Model checking infinite-state systems in CLP

    Get PDF
    The verification of safety and liveness properties for infinite-state systems is an important research problem. Can the well-established concepts and the existing technology for programming over constraints as first-class data structures contribute to this research? The work reported in this paper is a starting point for the experimental evaluation of constraint logic programming as a conceptual basis and practical implementation platform for model checking. We have implemented an automated verification method in CLP using real and boolean constraints. We have used the method on a number of infinite-state systems that model concurrent programs using integers or buffers. The basis of the correctness of our implementation is a formal connection between CLP programs and the formalism used for specifying concurrent systems

    Automated theorem proving for mathematics : real analysis in PVS

    Get PDF
    Computer Algebra Systems (CASs), such as Maple and Mathematica, are now widely used in both industry and education. In many areas of mathematics they perform well. However, many well-established methods in mathematics, such as definite integration via the fundamental theorem of calculus, rely on analytic side conditions which CASs in general do not support. This thesis presents our work with automatic, formal mathematics using the theorem prover PVS. Based on an existing real analysis library for PVS, we have implemented transcendental functions such as exp, cos, sin, tan and their inverses, and we have provided strategies to prove that a function is continuous at a given point. In general, this is undecidable, but using certain restrictions we can still provide proofs for a large collection of functions. Similarly, we can prove that a function has a limit at a point. We illustrate how the extended library may be used with Maple to provide correct results where Maple's are incorrect. We present a case study of definite integration in the CASs axiom. Maple, Mathematica and Matlab. The case study clearly shows that apart from axiom the systems do not fully check the necessary conditions for the definite integral to exist, thus giving results varying from plain incorrect to correct, even if the latter is difficult to detect without manipulating the result. The extension and correction of the PVS library consists of around 1000 theorems proven by around 18000 PVS proof commands. We also have a test suite of 88 lemmas for the automatic checks for continuity and existence of limits. Thus we have devised and tested automatic computational logic support for the use of formal mathematics in applications, particularly computer algebra
    • …
    corecore