Skip to main content

Showing 1–44 of 44 results for author: Cordeiro, L C

Searching in archive cs. Search in all archives.
.
  1. arXiv:2406.17862  [pdf, other

    cs.LO

    ESBMC v7.6: Enhanced Model Checking of C++ Programs with Clang AST

    Authors: Xianzhiyu Li, Kunjian Song, Mikhail R. Gadelha, Franz Brauße, Rafael S. Menezes, Konstantin Korovin, Lucas C. Cordeiro

    Abstract: This paper presents Efficient SMT-Based Context-Bounded Model Checker (ESBMC) v7.6, an extended version based on previous work on ESBMC v7.3 by K. Song et al. The v7.3 introduced a new Clang-based C++ front-end to address the challenges posed by modern C++ programs. Although the new front-end has demonstrated significant potential in previous studies, it remains in the developmental stage and lack… ▽ More

    Submitted 25 June, 2024; originally announced June 2024.

    Comments: 27 pages, 2 figures. arXiv admin note: substantial text overlap with arXiv:2308.05649

  2. arXiv:2406.15281  [pdf, ps, other

    cs.SE

    Interval Analysis in Industrial-Scale BMC Software Verifiers: A Case Study

    Authors: Rafael Sá Menezes, Edoardo Manino, Fedor Shmarov, Mohannad Aldughaim, Rosiane de Freitas, Lucas C. Cordeiro

    Abstract: Bounded Model Checking (BMC) is a widely used software verification technique. Despite its successes, the technique has several limiting factors, from state-space explosion to lack of completeness. Over the years, interval analysis has repeatedly been proposed as a partial solution to these limitations. In this work, we evaluate whether the computational cost of interval analysis yields significan… ▽ More

    Submitted 21 June, 2024; originally announced June 2024.

    Comments: Submitted to IFM

  3. arXiv:2406.04375  [pdf, other

    cs.SE

    Verifying components of Arm(R) Confidential Computing Architecture with ESBMC

    Authors: Tong Wu, Shale Xiong, Edoardo Manino, Gareth Stockwell, Lucas C. Cordeiro

    Abstract: Realm Management Monitor (RMM) is an essential firmware component within the recent Arm Confidential Computing Architecture (Arm CCA). Previous work applies formal techniques to verify the specification and prototype reference implementation of RMM. However, relying solely on a single verification tool may lead to the oversight of certain bugs or vulnerabilities. This paper discusses the applicati… ▽ More

    Submitted 5 June, 2024; originally announced June 2024.

  4. arXiv:2405.08848  [pdf, other

    cs.SE cs.AI

    Automated Repair of AI Code with Large Language Models and Formal Verification

    Authors: Yiannis Charalambous, Edoardo Manino, Lucas C. Cordeiro

    Abstract: The next generation of AI systems requires strong safety guarantees. This report looks at the software implementation of neural networks and related memory safety properties, including NULL pointer deference, out-of-bound access, double-free, and memory leaks. Our goal is to detect these vulnerabilities, and automatically repair them with the help of large language models. To this end, we first ex… ▽ More

    Submitted 14 May, 2024; originally announced May 2024.

  5. arXiv:2404.18353  [pdf, other

    cs.CR cs.AI cs.PL

    Do Neutral Prompts Produce Insecure Code? FormAI-v2 Dataset: Labelling Vulnerabilities in Code Generated by Large Language Models

    Authors: Norbert Tihanyi, Tamas Bisztray, Mohamed Amine Ferrag, Ridhi Jain, Lucas C. Cordeiro

    Abstract: This study provides a comparative analysis of state-of-the-art large language models (LLMs), analyzing how likely they generate vulnerabilities when writing simple C programs using a neutral zero-shot prompt. We address a significant gap in the literature concerning the security properties of code produced by these models without specific directives. N. Tihanyi et al. introduced the FormAI dataset… ▽ More

    Submitted 28 April, 2024; originally announced April 2024.

  6. arXiv:2404.09384  [pdf, other

    cs.SE cs.AI cs.CL cs.LG

    Tasks People Prompt: A Taxonomy of LLM Downstream Tasks in Software Verification and Falsification Approaches

    Authors: Víctor A. Braberman, Flavia Bonomo-Braberman, Yiannis Charalambous, Juan G. Colonna, Lucas C. Cordeiro, Rosiane de Freitas

    Abstract: Prompting has become one of the main approaches to leverage emergent capabilities of Large Language Models [Brown et al. NeurIPS 2020, Wei et al. TMLR 2022, Wei et al. NeurIPS 2022]. During the last year, researchers and practitioners have been playing with prompts to see how to make the most of LLMs. By homogeneously dissecting 80 papers, we investigate in deep how software testing and verificati… ▽ More

    Submitted 14 April, 2024; originally announced April 2024.

    ACM Class: F.3.1; D.2.4; D.2.5; I.2.7

  7. arXiv:2404.06031  [pdf, other

    cs.CR

    FuSeBMC AI: Acceleration of Hybrid Approach through Machine Learning

    Authors: Kaled M. Alshmrany, Mohannad Aldughaim, Chenfeng Wei, Tom Sweet, Richard Allmendinger, Lucas C. Cordeiro

    Abstract: We present FuSeBMC-AI, a test generation tool grounded in machine learning techniques. FuSeBMC-AI extracts various features from the program and employs support vector machine and neural network models to predict a hybrid approach optimal configuration. FuSeBMC-AI utilizes Bounded Model Checking and Fuzzing as back-end verification engines. FuSeBMC-AI outperforms the default configuration of the u… ▽ More

    Submitted 9 April, 2024; originally announced April 2024.

  8. arXiv:2312.14746  [pdf, ps, other

    cs.SE

    ESBMC v7.4: Harnessing the Power of Intervals

    Authors: Rafael Menezes, Mohannad Aldughaim, Bruno Farias, Xianzhiyu Li, Edoardo Manino, Fedor Shmarov, Kunjian Song, Franz Brauße, Mikhail R. Gadelha, Norbert Tihanyi, Konstantin Korovin, Lucas C. Cordeiro

    Abstract: ESBMC implements many state-of-the-art techniques for model checking. We report on new and improved features that allow us to obtain verification results for previously unsupported programs and properties. ESBMC employs a new static interval analysis of expressions in programs to increase verification performance. This includes interval-based reasoning over booleans and integers, forward and backw… ▽ More

    Submitted 22 December, 2023; originally announced December 2023.

  9. arXiv:2311.05281  [pdf, other

    cs.CR cs.SE

    Finding Software Vulnerabilities in Open-Source C Projects via Bounded Model Checking

    Authors: Janislley Oliveira de Sousa, Bruno Carvalho de Farias, Thales Araujo da Silva, Eddie Batista de Lima Filho, Lucas C. Cordeiro

    Abstract: Computer-based systems have solved several domain problems, including industrial, military, education, and wearable. Nevertheless, such arrangements need high-quality software to guarantee security and safety as both are mandatory for modern software products. We advocate that bounded model-checking techniques can efficiently detect vulnerabilities in general software systems. However, such an app… ▽ More

    Submitted 9 November, 2023; originally announced November 2023.

    Comments: 27 pages, submitted to STTT journal

  10. arXiv:2309.03617  [pdf, other

    cs.SE cs.AI cs.CR

    NeuroCodeBench: a plain C neural network benchmark for software verification

    Authors: Edoardo Manino, Rafael Sá Menezes, Fedor Shmarov, Lucas C. Cordeiro

    Abstract: Safety-critical systems with neural network components require strong guarantees. While existing neural network verification techniques have shown great progress towards this goal, they cannot prove the absence of software faults in the network implementation. This paper presents NeuroCodeBench - a verification benchmark for neural network code written in plain C. It contains 32 neural networks wi… ▽ More

    Submitted 7 September, 2023; originally announced September 2023.

    Comments: Submitted to the 2023 AFRiTS workshop

  11. arXiv:2308.05649  [pdf, other

    cs.LO

    ESBMC v7.3: Model Checking C++ Programs using Clang AST

    Authors: Kunjian Song, Mikhail R. Gadelha, Franz Brauße, Rafael S. Menezes, Lucas C. Cordeiro

    Abstract: This paper introduces ESBMC v7.3, the latest Efficient SMT-Based Context-Bounded Model Checker version, which now incorporates a new clang-based C++ front-end. While the previous CPROVER-based front-end served well for handling C++03 programs, it encountered challenges kee** up with the evolving C++ language. As new language and library features were added in each C++ version, the limitations of… ▽ More

    Submitted 10 August, 2023; originally announced August 2023.

  12. arXiv:2307.06616  [pdf, other

    cs.CR cs.AI

    SecureFalcon: Are We There Yet in Automated Software Vulnerability Detection with LLMs?

    Authors: Mohamed Amine Ferrag, Ammar Battah, Norbert Tihanyi, Ridhi Jain, Diana Maimut, Fatima Alwahedi, Thierry Lestable, Narinderjit Singh Thandi, Abdechakour Mechri, Merouane Debbah, Lucas C. Cordeiro

    Abstract: Software vulnerabilities can cause numerous problems, including crashes, data loss, and security breaches. These issues greatly compromise quality and can negatively impact the market adoption of software applications and systems. Traditional bug-fixing methods, such as static analysis, often produce false positives. While bounded model checking, a form of Formal Verification (FV), can provide mor… ▽ More

    Submitted 29 May, 2024; v1 submitted 13 July, 2023; originally announced July 2023.

  13. arXiv:2307.04501  [pdf, other

    cs.CR cs.CE

    A Privacy-Preserving and Accountable Billing Protocol for Peer-to-Peer Energy Trading Markets

    Authors: Kamil Erdayandi, Lucas C. Cordeiro, Mustafa A. Mustafa

    Abstract: This paper proposes a privacy-preserving and accountable billing (PA-Bill) protocol for trading in peer-to-peer energy markets, addressing situations where there may be discrepancies between the volume of energy committed and delivered. Such discrepancies can lead to challenges in providing both privacy and accountability while maintaining accurate billing. To overcome these challenges, a universa… ▽ More

    Submitted 11 September, 2023; v1 submitted 10 July, 2023; originally announced July 2023.

    Comments: 6-pages, 1 Figure, Accepted for International Conference on Smart Energy Systems and Technologies (SEST2023)

  14. The FormAI Dataset: Generative AI in Software Security Through the Lens of Formal Verification

    Authors: Norbert Tihanyi, Tamas Bisztray, Ridhi Jain, Mohamed Amine Ferrag, Lucas C. Cordeiro, Vasileios Mavroeidis

    Abstract: This paper presents the FormAI dataset, a large collection of 112, 000 AI-generated compilable and independent C programs with vulnerability classification. We introduce a dynamic zero-shot prompting technique constructed to spawn diverse programs utilizing Large Language Models (LLMs). The dataset is generated by GPT-3.5-turbo and comprises programs with varying levels of complexity. Some program… ▽ More

    Submitted 28 March, 2024; v1 submitted 5 July, 2023; originally announced July 2023.

    Comments: https://github.com/FormAI-Dataset PLEASE USE PUBLISHED VERSION FOR CITATION: https://doi.org/10.1145/3617555.3617874

    Journal ref: PROMISE 2023: Proceedings of the 19th International Conference on Predictive Models and Data Analytics in Software Engineering December 2023 Pages 33 to 43

  15. arXiv:2306.14263  [pdf, other

    cs.CR cs.AI

    Revolutionizing Cyber Threat Detection with Large Language Models: A privacy-preserving BERT-based Lightweight Model for IoT/IIoT Devices

    Authors: Mohamed Amine Ferrag, Mthandazo Ndhlovu, Norbert Tihanyi, Lucas C. Cordeiro, Merouane Debbah, Thierry Lestable, Narinderjit Singh Thandi

    Abstract: The field of Natural Language Processing (NLP) is currently undergoing a revolutionary transformation driven by the power of pre-trained Large Language Models (LLMs) based on groundbreaking Transformer architectures. As the frequency and diversity of cybersecurity attacks continue to rise, the importance of incident detection has significantly increased. IoT devices are expanding rapidly, resultin… ▽ More

    Submitted 8 February, 2024; v1 submitted 25 June, 2023; originally announced June 2023.

    Comments: This paper has been accepted for publication in IEEE Access: http://dx.doi.org/10.1109/ACCESS.2024.3363469

  16. arXiv:2306.13793  [pdf, other

    cs.LG cs.NE

    QNNRepair: Quantized Neural Network Repair

    Authors: Xidan Song, Youcheng Sun, Mustafa A. Mustafa, Lucas C. Cordeiro

    Abstract: We present QNNRepair, the first method in the literature for repairing quantized neural networks (QNNs). QNNRepair aims to improve the accuracy of a neural network model after quantization. It accepts the full-precision and weight-quantized neural networks and a repair dataset of passing and failing tests. At first, QNNRepair applies a software fault localization method to identify the neurons tha… ▽ More

    Submitted 10 September, 2023; v1 submitted 23 June, 2023; originally announced June 2023.

  17. arXiv:2305.14752  [pdf, other

    cs.SE cs.AI cs.FL cs.LG

    A New Era in Software Security: Towards Self-Healing Software via Large Language Models and Formal Verification

    Authors: Norbert Tihanyi, Ridhi Jain, Yiannis Charalambous, Mohamed Amine Ferrag, Youcheng Sun, Lucas C. Cordeiro

    Abstract: This paper introduces an innovative approach that combines Large Language Models (LLMs) with Formal Verification strategies for automatic software vulnerability repair. Initially, we employ Bounded Model Checking (BMC) to identify vulnerabilities and extract counterexamples. These counterexamples are supported by mathematical proofs and the stack trace of the vulnerabilities. Using a specially des… ▽ More

    Submitted 27 June, 2024; v1 submitted 24 May, 2023; originally announced May 2023.

  18. arXiv:2303.11745  [pdf, other

    cs.CR cs.AI

    Poisoning Attacks in Federated Edge Learning for Digital Twin 6G-enabled IoTs: An Anticipatory Study

    Authors: Mohamed Amine Ferrag, Burak Kantarci, Lucas C. Cordeiro, Merouane Debbah, Kim-Kwang Raymond Choo

    Abstract: Federated edge learning can be essential in supporting privacy-preserving, artificial intelligence (AI)-enabled activities in digital twin 6G-enabled Internet of Things (IoT) environments. However, we need to also consider the potential of attacks targeting the underlying AI systems (e.g., adversaries seek to corrupt data on the IoT devices during local updates or corrupt the model updates); hence… ▽ More

    Submitted 21 March, 2023; originally announced March 2023.

    Comments: The paper is accepted and will be published in the IEEE ICC 2023 Conference Proceedings

  19. arXiv:2301.09142  [pdf, ps, other

    cs.LG

    LF-checker: Machine Learning Acceleration of Bounded Model Checking for Concurrency Verification (Competition Contribution)

    Authors: Tong Wu, Edoardo Manino, Fatimah Aljaafari, Pavlos Petoumenos, Lucas C. Cordeiro

    Abstract: We describe and evaluate LF-checker, a metaverifier tool based on machine learning. It extracts multiple features of the program under test and predicts the optimal configuration (flags) of a bounded model checker with a decision tree. Our current work is specialised in concurrency verification and employs ESBMC as a back-end verification engine. In the paper, we demonstrate that LF-checker achiev… ▽ More

    Submitted 22 January, 2023; originally announced January 2023.

  20. arXiv:2207.04231  [pdf, other

    cs.LG cs.AI cs.SE

    CEG4N: Counter-Example Guided Neural Network Quantization Refinement

    Authors: João Batista P. Matos Jr., Iury Bessa, Edoardo Manino, Xidan Song, Lucas C. Cordeiro

    Abstract: Neural networks are essential components of learning-based software systems. However, their high compute, memory, and power requirements make using them in low resources domains challenging. For this reason, neural networks are often quantized before deployment. Existing quantization techniques tend to degrade the network accuracy. We propose Counter-Example Guided Neural Network Quantization Refi… ▽ More

    Submitted 9 July, 2022; originally announced July 2022.

  21. arXiv:2206.14068  [pdf, other

    cs.SE

    FuSeBMC v4: Improving code coverage with smart seeds via BMC, fuzzing and static analysis

    Authors: Kaled M. Alshmrany, Mohannad Aldughaim, Ahmed Bhayat, Lucas C. Cordeiro

    Abstract: Bounded model checking (BMC) and fuzzing techniques are among the most effective methods for detecting errors and security vulnerabilities in software. However, there are still shortcomings in detecting these errors due to the inability of existent methods to cover large areas in target code. We propose FuSeBMC v4, a test generator that synthesizes seeds with useful properties, that we refer to as… ▽ More

    Submitted 18 April, 2024; v1 submitted 28 June, 2022; originally announced June 2022.

    Comments: 24 pages, In The Formal Aspects of Computing Journal (FAC 2024)

  22. arXiv:2206.06043  [pdf, other

    cs.SE eess.SY

    Combining BMC and Fuzzing Techniques for Finding Software Vulnerabilities in Concurrent Programs

    Authors: Fatimah K. Aljaafari, Rafael Menezes, Edoardo Manino, Fedor Shmarov, Mustafa A. Mustafa, Lucas C. Cordeiro

    Abstract: Finding software vulnerabilities in concurrent programs is a challenging task due to the size of the state-space exploration, as the number of interleavings grows exponentially with the number of program threads and statements. We propose and evaluate EBF (Ensembles of Bounded Model Checking with Fuzzing) -- a technique that combines Bounded Model Checking (BMC) and Gray-Box Fuzzing (GBF) to find… ▽ More

    Submitted 20 October, 2022; v1 submitted 13 June, 2022; originally announced June 2022.

  23. ESBMC-Jimple: Verifying Kotlin Programs via Jimple Intermediate Representation

    Authors: Rafael Menezes, Daniel Moura, Helena Cavalcante, Rosiane de Freitas, Lucas C. Cordeiro

    Abstract: In this work, we describe and evaluate the first model checker for verifying Kotlin programs through the Jimple intermediate representation. The verifier, named ESBMC-Jimple, is built on top of the Efficient SMT-based Context-Bounded Model Checker (ESBMC). It uses the Soot framework to obtain the Jimple IR, representing a simplified version of the Kotlin source code, containing a maximum of three… ▽ More

    Submitted 20 July, 2022; v1 submitted 9 June, 2022; originally announced June 2022.

    Comments: ACM SIGSOFT International Symposium on Software Testing and Analysis 2022

  24. arXiv:2112.10627  [pdf, other

    cs.CR cs.CY cs.SC cs.SE

    FuSeBMC v.4: Smart Seed Generation for Hybrid Fuzzing

    Authors: Kaled M. Alshmrany, Mohannad Aldughaim, Ahmed Bhayat, Lucas C. Cordeiro

    Abstract: FuSeBMC is a test generator for finding security vulnerabilities in C programs. In earlier work [4], we described a previous version that incrementally injected labels to guide Bounded Model Checking (BMC) and Evolutionary Fuzzing engines to produce test cases for code coverage and bug finding. This paper introduces a new version of FuSeBMC that utilizes both engines to produce smart seeds. First,… ▽ More

    Submitted 20 December, 2021; originally announced December 2021.

    Comments: 4 pages, 2 figures, International Conference on Fundamental Approaches to Software Engineering (FASE 2022)

  25. arXiv:2111.13117  [pdf, other

    cs.LO

    ESBMC-Solidity: An SMT-Based Model Checker for Solidity Smart Contracts

    Authors: Kunjian Song, Nedas Matulevicius, Eddie B. de Lima Filho, Lucas C. Cordeiro

    Abstract: Smart contracts written in Solidity are programs used in blockchain networks, such as Etherium, for performing transactions. However, as with any piece of software, they are prone to errors and may present vulnerabilities, which malicious attackers could then use. This paper proposes a solidity frontend for the efficient SMT-based context-bounded model checker (ESBMC), named ESBMC-Solidity, which… ▽ More

    Submitted 25 November, 2021; originally announced November 2021.

    Comments: 4 pages, 2 figures, 2 tables

    ACM Class: D.2.4; F.3.1

  26. arXiv:2107.01093  [pdf, other

    cs.SE

    Model Checking C++ Programs

    Authors: Felipe R. Monteiro, Mikhail R. Gadelha, Lucas C. Cordeiro

    Abstract: In the last three decades, memory safety issues in system programming languages such as C or C++ have been one of the significant sources of security vulnerabilities. However, there exist only a few attempts with limited success to cope with the complexity of C++ program verification. Here we describe and evaluate a novel verification approach based on bounded model checking (BMC) and satisfiabili… ▽ More

    Submitted 2 July, 2021; originally announced July 2021.

    Comments: 30 pages

  27. arXiv:2103.11363  [pdf, other

    cs.CR

    Finding Security Vulnerabilities in IoT Cryptographic Protocol and Concurrent Implementations

    Authors: Fatimah Aljaafari, Rafael Menezes, Mustafa A. Mustafa, Lucas C. Cordeiro

    Abstract: Internet of Things (IoT) consists of a large number of devices connected through a network, which exchange a high volume of data, thereby posing new security, privacy, and trust issues. One way to address these issues is ensuring data confidentiality using lightweight encryption algorithms for IoT protocols. However, the design and implementation of such protocols is an error-prone task; flaws in… ▽ More

    Submitted 27 April, 2021; v1 submitted 21 March, 2021; originally announced March 2021.

  28. arXiv:2012.11223  [pdf, other

    cs.CR cs.LO

    FuSeBMC: A White-Box Fuzzer for Finding Security Vulnerabilities in C Programs

    Authors: Kaled M. Alshmrany, Rafael S. Menezes, Mikhail R. Gadelha, Lucas C. Cordeiro

    Abstract: We describe and evaluate a novel white-box fuzzer for C programs named FuSeBMC, which combines fuzzing and symbolic execution, and applies Bounded Model Checking (BMC) to find security vulnerabilities in C programs. FuSeBMC explores and analyzes C programs (1) to find execution paths that lead to property violations and (2) to incrementally inject labels to guide the fuzzer and the BMC engine to p… ▽ More

    Submitted 21 December, 2020; originally announced December 2020.

    Comments: 4 pages

  29. arXiv:2007.05315  [pdf, other

    cs.LG cs.CR stat.ML

    Generating Adversarial Inputs Using A Black-box Differential Technique

    Authors: João Batista Pereira Matos Juúnior, Lucas Carvalho Cordeiro, Marcelo d'Amorim, Xiaowei Huang

    Abstract: Neural Networks (NNs) are known to be vulnerable to adversarial attacks. A malicious agent initiates these attacks by perturbing an input into another one such that the two inputs are classified differently by the NN. In this paper, we consider a special class of adversarial examples, which can exhibit not only the weakness of NN models - as do for the typical adversarial examples - but also the d… ▽ More

    Submitted 10 July, 2020; originally announced July 2020.

  30. arXiv:2004.12699  [pdf, other

    cs.LO cs.SE

    An Efficient Floating-Point Bit-Blasting API for Verifying C Programs

    Authors: Mikhail R. Gadelha, Lucas C. Cordeiro, Denis A. Nicole

    Abstract: We describe a new SMT bit-blasting API for floating-points and evaluate it using different out-of-the-shelf SMT solvers during the verification of several C programs. The new floating-point API is part of the SMT backend in ESBMC, a state-of-the-art bounded model checker for C and C++. For the evaluation, we compared our floating-point API against the native floating-point APIs in Z3 and MathSAT.… ▽ More

    Submitted 29 April, 2020; v1 submitted 27 April, 2020; originally announced April 2020.

    Comments: 20 pages

  31. arXiv:2001.09837  [pdf, other

    cs.CR cs.SE

    Verifying Software Vulnerabilities in IoT Cryptographic Protocols

    Authors: Fatimah Aljaafari, Lucas C. Cordeiro, Mustafa A. Mustafa

    Abstract: Internet of Things (IoT) is a system that consists of a large number of smart devices connected through a network. The number of these devices is increasing rapidly, which creates a massive and complex network with a vast amount of data communicated over that network. One way to protect this data in transit, i.e., to achieve data confidentiality, is to use lightweight encryption algorithms for IoT… ▽ More

    Submitted 27 January, 2020; originally announced January 2020.

  32. arXiv:1907.12933  [pdf, other

    cs.LO cs.LG cs.NE

    Incremental Bounded Model Checking of Artificial Neural Networks in CUDA

    Authors: Luiz H. Sena, Iury V. Bessa, Mikhail R. Gadelha, Lucas C. Cordeiro, Edjard Mota

    Abstract: Artificial Neural networks (ANNs) are powerful computing systems employed for various applications due to their versatility to generalize and to respond to unexpected inputs/patterns. However, implementations of ANNs for safety-critical systems might lead to failures, which are hardly predicted in the design phase since ANNs are highly parallel and their parameters are hardly interpretable. Here w… ▽ More

    Submitted 30 July, 2019; originally announced July 2019.

    Comments: 8 pages

  33. arXiv:1906.11488  [pdf, other

    cs.CR cs.LO

    Finding Security Vulnerabilities in Unmanned Aerial Vehicles Using Software Verification

    Authors: Omar M. Alhawi, Mustafa A. Mustafa, Lucas C. Cordeiro

    Abstract: The proliferation of Unmanned Aerial Vehicles (UAVs) embedded with vulnerable monolithic software has recently raised serious concerns about their security due to concurrency aspects and fragile communication links. However, verifying security in UAV software based on traditional testing remains an open challenge mainly due to scalability and deployment issues. Here we investigate software verific… ▽ More

    Submitted 11 October, 2019; v1 submitted 27 June, 2019; originally announced June 2019.

    Comments: 16 pages, 7 figures, conference

  34. arXiv:1904.06152  [pdf, ps, other

    cs.SE cs.LO

    Boost the Impact of Continuous Formal Verification in Industry

    Authors: Felipe R. Monteiro, Mikhail R. Gadelha, Lucas C. Cordeiro

    Abstract: Software model checking has experienced significant progress in the last two decades, however, one of its major bottlenecks for practical applications remains its scalability and adaptability. Here, we describe an approach to integrate software model checking techniques into the DevOps culture by exploiting practices such as continuous integration and regression tests. In particular, our proposed… ▽ More

    Submitted 17 July, 2019; v1 submitted 12 April, 2019; originally announced April 2019.

    Comments: 7 pages

  35. arXiv:1904.02501  [pdf, other

    cs.LO

    Beyond k-induction: Learning from Counterexamples to Bidirectionally Explore the State Space

    Authors: Mikhail R. Gadelha, Felipe R. Monteiro, Enrico Steffinlongo, Lucas C. Cordeiro, Denis A. Nicole

    Abstract: We describe and evaluate a novel k-induction proof rule called bidirectional k-induction (bkind), which substantially improves the k-induction bug-finding capabilities. Particularly, bkind exploits the counterexamples generated by the over-approximation step to derive new properties and feed them back to the bounded model checking procedure. We also combine an interval invariant generator and bkin… ▽ More

    Submitted 4 April, 2019; originally announced April 2019.

    Comments: 17 pages

  36. arXiv:1810.12041  [pdf, other

    cs.LO cs.PL cs.SE

    SMT-Based Refutation of Spurious Bug Reports in the Clang Static Analyzer

    Authors: Mikhail R. Gadelha, Enrico Steffinlongo, Lucas C. Cordeiro, Bernd Fischer, Denis A. Nicole

    Abstract: We describe and evaluate a bug refutation extension for the Clang Static Analyzer (CSA) that addresses the limitations of the existing built-in constraint solver. In particular, we complement CSA's existing heuristics that remove spurious bug reports. We encode the path constraints produced by CSA as Satisfiability Modulo Theories (SMT) problems, use SMT solvers to precisely check them for satisfi… ▽ More

    Submitted 30 November, 2018; v1 submitted 29 October, 2018; originally announced October 2018.

    Comments: 4 pages

  37. arXiv:1708.04028  [pdf, ps, other

    cs.RO cs.AI

    Counterexample Guided Inductive Optimization Applied to Mobile Robots Path Planning (Extended Version)

    Authors: Rodrigo F. Araújo, Alexandre Ribeiro, Iury V. Bessa, Lucas C. Cordeiro, João E. C. Filho

    Abstract: We describe and evaluate a novel optimization-based off-line path planning algorithm for mobile robots based on the Counterexample-Guided Inductive Optimization (CEGIO) technique. CEGIO iteratively employs counterexamples generated from Boolean Satisfiability (SAT) and Satisfiability Modulo Theories (SMT) solvers, in order to guide the optimization process and to ensure global optimization. This p… ▽ More

    Submitted 14 August, 2017; originally announced August 2017.

    Comments: 7 pages, 14rd Latin American Robotics Symposium (LARS'2017)

  38. arXiv:1706.05088  [pdf, ps, other

    cs.LO eess.SY

    Verification of Magnitude and Phase Responses in Fixed-Point Digital Filters

    Authors: Daniel P. M. de Mello, Mauro L. de Freitas, Lucas C. Cordeiro, Waldir S. S. Junior, Iury V. de Bessa, Eddie B. L. Filho, Laurent Clavier

    Abstract: In the digital signal processing (DSP) area, one of the most important tasks is digital filter design. Currently, this procedure is performed with the aid of computational tools, which generally assume filter coefficients represented with floating-point arithmetic. Nonetheless, during the implementation phase, which is often done in digital signal processors or field programmable gate arrays, the… ▽ More

    Submitted 16 June, 2017; originally announced June 2017.

  39. arXiv:1706.02136  [pdf, ps, other

    cs.PL

    Counterexample-Guided k-Induction Verification for Fast Bug Detection

    Authors: Mikhail Y. R. Gadelha, Lucas C. Cordeiro, Denis A. Nicole

    Abstract: Recently, the k-induction algorithm has proven to be a successful approach for both finding bugs and proving correctness. However, since the algorithm is an incremental approach, it might waste resources trying to prove incorrect programs. In this paper, we propose to extend the k-induction algorithm in order to shorten the number of steps required to find a property violation. We convert the algo… ▽ More

    Submitted 19 January, 2018; v1 submitted 7 June, 2017; originally announced June 2017.

  40. arXiv:1704.03738  [pdf, ps, other

    cs.AI cs.LO

    Counterexample Guided Inductive Optimization

    Authors: Rodrigo F. Araujo, Higo F. Albuquerque, Iury V. de Bessa, Lucas C. Cordeiro, Joao Edgar C. Filho

    Abstract: This paper describes three variants of a counterexample guided inductive optimization (CEGIO) approach based on Satisfiability Modulo Theories (SMT) solvers. In particular, CEGIO relies on iterative executions to constrain a verification procedure, in order to perform inductive generalization, based on counterexamples extracted from SMT solvers. CEGIO is able to successfully optimize a wide range… ▽ More

    Submitted 11 April, 2017; originally announced April 2017.

  41. arXiv:1610.04597  [pdf

    cs.DS

    Application of Global Route-Planning Algorithms with Geodesy

    Authors: William C. da Rosa, Iury V. de Bessa, Lucas C. Cordeiro

    Abstract: Global Route-Planning Algorithms (GRPA) are required to compute paths between several points located on Earth's surface. A geodesic algorithm is employed as an auxiliary tool, increasing the precision of distance calculations. This work presents a novel simulator for GRPA, which compares and evaluates three GRPAs implemented to solve the shortest path problem for points located at different cities… ▽ More

    Submitted 14 October, 2016; originally announced October 2016.

    Comments: Technical Report

  42. arXiv:1608.00143  [pdf, other

    cs.CY

    Complementary Training Programme for Electrical and Computer Engineering Students Through an Industrial-Academic Collaboration (Extended Version)

    Authors: Felipe R. Monteiro, Phillipe A. Pereira, Lucas C. Cordeiro, Cicero F. F. Costa Filho, Marly G. F. Costa

    Abstract: We describe the results of an industrial-academic collaboration among the Graduate Program in Electrical Engineering (PPGEE), the Electronics and Information Research Centre (CETELI), and Samsung Eletrônica da Amazônia Ltda. (Samsung), which aims at training human resources for Samsung's research and development (R&D) areas. Inspired by co-operative education systems, this collaboration offers an… ▽ More

    Submitted 30 July, 2016; originally announced August 2016.

    Comments: Extended version of paper published at FIE'16

  43. arXiv:1509.02490  [pdf, ps, other

    cs.LO cs.SE

    Fault Localization in Multi-Threaded C Programs using Bounded Model Checking (extended version)

    Authors: Erickson H. da S. Alves, Lucas C. Cordeiro, Eddie B. de Lima Filho

    Abstract: Software debugging is a very time-consuming process, which is even worse for multi-threaded programs, due to the non-deterministic behavior of thread-scheduling algorithms. However, the debugging time may be greatly reduced, if automatic methods are used for localizing faults. In this study, a new method for fault localization, in multi-threaded C programs, is proposed. It transforms a multi-threa… ▽ More

    Submitted 8 September, 2015; originally announced September 2015.

    Comments: extended version of paper published at SBESC'15

  44. arXiv:1509.01682  [pdf, other

    cs.LO cs.SE

    Bounded Model Checking of C++ Programs Based on the Qt Framework (extended version)

    Authors: Felipe R. M. Sousa, Lucas C. Cordeiro, Eddie B. de Lima Filho

    Abstract: The software development process for embedded systems is getting faster and faster, which generally incurs an increase in the associated complexity. As a consequence, consumer electronics companies usually invest a lot of resources in fast and automatic verification processes, in order to create robust systems and reduce product recall rates. Because of that, the present paper proposes a simplifie… ▽ More

    Submitted 5 September, 2015; originally announced September 2015.

    Comments: extended version of paper published at GCCE'15