4 research outputs found

    ESBMC-Python:A Bounded Model Checker for Python Programs

    Get PDF
    This paper introduces a tool for verifying Python programs, which, using type annotation and front-end processing, can harness the capabilities of a bounded model-checking (BMC) pipeline. It transforms an input program into an abstract syntax tree to infer and add type information. Then, it translates Python expressions and statements into an intermediate representation. Finally, it converts this description into formulae evaluated with satisfiability modulo theories (SMT) solvers. The proposed approach was realized with the efficient SMT-based bounded model checker (ESBMC), which resulted in a tool called ESBMC-Python, the first BMC-based Python-code verifier. Experimental results, with a test suite specifically developed for this purpose, showed its effectiveness, where successful and failed tests were correctly evaluated. Moreover, it found a real problem in the Ethereum Consensus Specification

    Verifying Fragility in Digital Systems with Uncertainties using DSVerifier v2.0

    No full text
    Experimental Setup: The experiments were executed in a computer with the following hardware configurations: Intel Core i7-2600 3.40 GHz processor, 24 GB of RAM, and Ubuntu 64-bits OS. The experiments used the Linux times command to measure CPU time used for each benchmark. The runtime was limited to one hour (i.e., 3600s). Benchmarks Description: IEEE Transaction on Computers Benchmarks: We extracted 4 digital systems (controller and plant) from Keel, L.H. and Bhattacharyya, S.P. 1997. Robust, fragile, or optimal? IEEE Trans. Automat. Control, 42, 1098–1105. All digital systems are designed in transfer-function format, and the discretized plant and controller are published by Bessa, I. V. et al. Formal Non-Fragile Stability Verification of Digital Control Systems with Uncertainty. In IEEE Transactions on Computers, v.66(3), pp. 545-552, 2017. ACM International Conference on Hybrid Systems: Computation and Control (HSCC) Benchmarks: The first set of benchmarks uses the discrete model of a cruise control system for a car, and accounts for rolling friction, aerodynamic drag, and the gravitational disturbance force. The second set of benchmarks considers the discrete model of a simple spring-mass damper plant. A third set of benchmarks uses the discrete model for satellite attitude dynamics, which require attitude control for orientation of antennas and sensors w.r.t. Earth. The fourth and fifth set of benchmarks describe the discrete model of a DC servo motor velocity dynamics. The sixth set of benchmarks contains a well-studied discrete non-minimal phase model. Non-minimal phase models cause additional difficulties for the design of stable controllers. The seventh set of benchmarks describes the discrete model for the Helicopter Longitudinal Motion, which provides the longitudinal motion dynamics of a helicopter. The eighth set of benchmarks contains the discrete model for the known Inverted Pendulum, which describes a pendulum dynamics with its center of mass above its pivot point. The ninth set of benchmarks contains the Magnetic Suspension discrete model, which describes the dynamics of a mass that levitates with support only of a magnetic field. The last set of benchmarks contains the Computer Tape Driver discrete model, which describes a system to read and write data on a storage device. Results: https://docs.google.com/spreadsheets/d/e/2PACX-1vRQDfOY26IHw4gxQFDaRbWVYm-bN4hGOo8d6VZCWiVjSG_nj7qGa6CyDm4phgL97WZNmeXvH-hodhNP/pubhtml

    Verifying Fragility in Digital Systems with Uncertainties using DSVerifier v2.0

    No full text
    Experimental Setup: The experiments were executed in a computer with the following hardware configurations: Intel Core i7-2600 3.40 GHz processor, 24 GB of RAM, and Ubuntu 64-bits OS. The experiments used the Linux times command to measure CPU time used for each benchmark. The runtime was limited to one hour (i.e., 3600s). Benchmarks Description: IEEE Transaction on Computers Benchmarks: We extracted 4 digital systems (controller and plant) from Keel, L.H. and Bhattacharyya, S.P. 1997. Robust, fragile, or optimal? IEEE Trans. Automat. Control, 42, 1098–1105. All digital systems are designed in transfer-function format, and the discretized plant and controller are published by Bessa, I. V. et al. Formal Non-Fragile Stability Verification of Digital Control Systems with Uncertainty. In IEEE Transactions on Computers, v.66(3), pp. 545-552, 2017. ACM International Conference on Hybrid Systems: Computation and Control (HSCC) Benchmarks: The first set of benchmarks uses the discrete model of a cruise control system for a car, and accounts for rolling friction, aerodynamic drag, and the gravitational disturbance force. The second set of benchmarks considers the discrete model of a simple spring-mass damper plant. A third set of benchmarks uses the discrete model for satellite attitude dynamics, which require attitude control for orientation of antennas and sensors w.r.t. Earth. The fourth and fifth set of benchmarks describe the discrete model of a DC servo motor velocity dynamics. The sixth set of benchmarks contains a well-studied discrete non-minimal phase model. Non-minimal phase models cause additional difficulties for the design of stable controllers. The seventh set of benchmarks describes the discrete model for the Helicopter Longitudinal Motion, which provides the longitudinal motion dynamics of a helicopter. The eighth set of benchmarks contains the discrete model for the known Inverted Pendulum, which describes a pendulum dynamics with its center of mass above its pivot point. The ninth set of benchmarks contains the Magnetic Suspension discrete model, which describes the dynamics of a mass that levitates with support only of a magnetic field. The last set of benchmarks contains the Computer Tape Driver discrete model, which describes a system to read and write data on a storage device. Results: https://docs.google.com/spreadsheets/d/e/2PACX-1vRQDfOY26IHw4gxQFDaRbWVYm-bN4hGOo8d6VZCWiVjSG_nj7qGa6CyDm4phgL97WZNmeXvH-hodhNP/pubhtml
    corecore