SlideShare une entreprise Scribd logo
1  sur  21
Télécharger pour lire hors ligne
Draft
Constraint-Based Error Localization
Mohammed, Bekkouche, Hélène Collavizza, Michel
Rueher
University of Nice Sophia-Antipolis I3S – CNRS
France
Réunion VACSIM – 14 Octobre 2014
Draft
Problem Motivating example Experiments Conclusion
Plan
1 Problem
2 Motivating example
3 Experiments
4 Conclusion
Réunion VACSIM - Cachan Octobre 2014 Verifying FP-programs Michel Rueher 2
Draft
Problem Motivating example Experiments Conclusion
Problem: informal presentation
• Model checking, testing
Generation of counterexamples
• Input data & wrong output (testing)
• Input data & violated post condition / property
→ Execution trace
• Problems
• Execution trace: often lengthy and difficult to understand
• Location of the portions of code that contain errors
→ Very expensive
Réunion VACSIM - Cachan Octobre 2014 Verifying FP-programs Michel Rueher 3
Draft
Problem Motivating example Experiments Conclusion
Goals
• Provide helpful information for error localization on numeric
constraint systems
• Two categories of information
• How much of an unsatisfiable constraint set can be
satisfied ?
→ Minimal Correction Set (MCS)
MaxSAT, Max CSP, MaxFS
• Where in the constraint set the “problem” lies ?
→ Minimal Unsatisfiable Core (MUC),
Irreducible Inconsistent Subsystems (IIS)
Réunion VACSIM - Cachan Octobre 2014 Verifying FP-programs Michel Rueher 4
Draft
Problem Motivating example Experiments Conclusion
Definitions
Réunion VACSIM - Cachan Octobre 2014 Verifying FP-programs Michel Rueher 5
Draft
Problem Motivating example Experiments Conclusion
Computing all MCS : CAMUS (Liffiton &
Sakallah-2007
Réunion VACSIM - Cachan Octobre 2014 Verifying FP-programs Michel Rueher 6
Draft
Problem Motivating example Experiments Conclusion
Computing all MCS – Example
Réunion VACSIM - Cachan Octobre 2014 Verifying FP-programs Michel Rueher 7
Problem Motivating example Experiments Conclusion
Computing one MUS from a set of MCSes (Liffiton
& Sakallah-2007
Réunion VACSIM - Cachan Octobre 2014 Verifying FP-programs Michel Rueher 8
Problem Motivating example Experiments Conclusion
LocFaults
→ Computing MCS on programs with numerical
computations
• Input :
• A faulty program: postcondition does not hold
• A counter-example
• Output : A small set of suspicious statements
Réunion VACSIM - Cachan Octobre 2014 Verifying FP-programs Michel Rueher 9
Problem Motivating example Experiments Conclusion
LocFaults : détails (1)
• Process
1 Building of the CFG of a program in DSA form
2 Translating of the program and its specification in a set of
numerical constraints
3 ComputingMCS with the counter-example CE, constraints
of the corresponding PATH and the postcondition POST
Note : CSP C = CE ∪ PATH ∪ POST is inconsistant
• Key points : MCS on paths “closely” related to the CE
→ Path of CE
→ Paths with at most k deviations from the CE
Réunion VACSIM - Cachan Octobre 2014 Verifying FP-programs Michel Rueher 10
Problem Motivating example Experiments Conclusion
LocFaults : details (2)
• Computing bounded MCS along the path of CE
• DFS Exploration of the CFG : propagation of CE and at
most k deviations of conditional statements: c1, .., ck :
• C: contraints along the path before ck
• IF P ∪ POST holds:
• {¬c1, .., ¬ck } is a potential correction,
• The MCS of C ∪ {¬c1, .., ¬ck } are potential corrections
Réunion VACSIM - Cachan Octobre 2014 Verifying FP-programs Michel Rueher 11
Problem Motivating example Experiments Conclusion
Example (1)
Program AbsMinus : an error has been introduced in line 10,
thus for the input data {i = 0, j = 1}, it returns −1
Réunion VACSIM - Cachan Octobre 2014 Verifying FP-programs Michel Rueher 12
Problem Motivating example Experiments Conclusion
Example (2)
Réunion VACSIM - Cachan Octobre 2014 Verifying FP-programs Michel Rueher 13
Problem Motivating example Experiments Conclusion
Example (3)
Réunion VACSIM - Cachan Octobre 2014 Verifying FP-programs Michel Rueher 14
Problem Motivating example Experiments Conclusion
Experiments - Process
systems and tools
• LocFaults:
→ MIP solver of IBM ILOG CPLEX
→ CPBPV system to generate the CFG and CE
→ Benchmarks: Java programs
• BugAssist:
→ MaxSAT solverMSUnCore2
→ Benchmarks: ANSI-C programs
Réunion VACSIM - Cachan Octobre 2014 Verifying FP-programs Michel Rueher 15
Problem Motivating example Experiments Conclusion
Experiments - Benchmarks
• TCAS : an aircraft collision avoidance system. The
program contains 173 lines of C code with almost no
arithmetic operations. The suite contains 41 faulty versions
• Tritype takes three positive integers as inputs (i, j, k) the
triangle sides, and returns the value 2 if the inputs
correspond to an isosceles triangle, the value 3 if they
correspond to an equilateral triangle, the value 1 if they
correspond to some other triangle, and the value 4
otherwise.
Réunion VACSIM - Cachan Octobre 2014 Verifying FP-programs Michel Rueher 16
Problem Motivating example Experiments Conclusion
Experiments - Results on TCAS suite
• Computation times: no significant difference
• At most one deviation required except for version V41
where two deviations were required
• Size of the set of suspicious instructions identified by
BUGASSISTin general larger than the sum of the sizes of
the sets of suspicious instructions generated by
LOCFAULTS
• BUGASSISTidentifies a bit more errors than LOCFAULTS
• LOCFAULTSreports a set of MCS for each faulty path
→ the error localization process is much more easier than
with the single set of suspicious errors reported by
BUGASSIST
Réunion VACSIM - Cachan Octobre 2014 Verifying FP-programs Michel Rueher 17
Problem Motivating example Experiments Conclusion
Experiments - Error on Tritype
• TritypeV1 : error in the last assignment statement of the
program
• TritypeV2 : error in a nested condition, just before the
last assignment
• TritypeV3 : the error an assignment and will entail a bad
branching
• TritypeV4: error in condition, at the beginning of the
program
• TritypeV5 : wo wrong conditions in this program
• TritypeV6 : a variation that returns the perimeter of the
triangle
• TritypeV7 : a variation that computes the square of the
surface of the triangle by using Heron’s formula
Réunion VACSIM - Cachan Octobre 2014 Verifying FP-programs Michel Rueher 18
Problem Motivating example Experiments Conclusion
Experiments - Results on Tritype (2)
Réunion VACSIM - Cachan Octobre 2014 Verifying FP-programs Michel Rueher 19
Problem Motivating example Experiments Conclusion
Experiments - Results on Tritype (3)
Program
LocFaults BugAssist
P
L
P L
= 0 ≤ 1 ≤ 2 ≤ 3
TritypeV7 0, 722s 0, 051s 0, 112s 0, 119s 0, 144s 0, 140s 20, 373s
TritypeV8 0, 731s 0, 08s 0, 143s 0, 156s 0, 162s 0, 216s 25, 562s
Computation times for non linear Trityp programs
Réunion VACSIM - Cachan Octobre 2014 Verifying FP-programs Michel Rueher 20
Problem Motivating example Experiments Conclusion
Conclusion and Discussion
• Flow-based and incremental approach of LOCFAULTSis a
good way to help the programmer with bug hunting since it
locates the errors around the path of t he counter-example
• Constraint-based framework is well adapted for handling
arithmetic operations and it can be extended in
straightforward way for handling programs with
floating-point numbers computations
Réunion VACSIM - Cachan Octobre 2014 Verifying FP-programs Michel Rueher 21

Contenu connexe

En vedette

LocFaults: Une nouvelle approche basée sur les contraintes et dirigée par les...
LocFaults: Une nouvelle approche basée sur les contraintes et dirigée par les...LocFaults: Une nouvelle approche basée sur les contraintes et dirigée par les...
LocFaults: Une nouvelle approche basée sur les contraintes et dirigée par les...Mohammed Bekkouche
 
Une approche incrémentale combinant les techniques BMC et un problème CSP pou...
Une approche incrémentale combinant les techniques BMC et un problème CSP pou...Une approche incrémentale combinant les techniques BMC et un problème CSP pou...
Une approche incrémentale combinant les techniques BMC et un problème CSP pou...Mohammed Bekkouche
 
SQL: Unique IDs, Primary Keys and Archiving Inactive Rows Without Violating C...
SQL: Unique IDs, Primary Keys and Archiving Inactive Rows Without Violating C...SQL: Unique IDs, Primary Keys and Archiving Inactive Rows Without Violating C...
SQL: Unique IDs, Primary Keys and Archiving Inactive Rows Without Violating C...Marco M. Kiesewetter, MBA
 
oracle Sql constraint
oracle  Sql constraint oracle  Sql constraint
oracle Sql constraint home
 
Defense of Mohammed Bekkouche's PhD Thesis : "Combining techniques of Bounded...
Defense of Mohammed Bekkouche's PhD Thesis : "Combining techniques of Bounded...Defense of Mohammed Bekkouche's PhD Thesis : "Combining techniques of Bounded...
Defense of Mohammed Bekkouche's PhD Thesis : "Combining techniques of Bounded...Mohammed Bekkouche
 
Constraints In Sql
Constraints In SqlConstraints In Sql
Constraints In SqlAnurag
 
SQL Tutorial - Table Constraints
SQL Tutorial - Table ConstraintsSQL Tutorial - Table Constraints
SQL Tutorial - Table Constraints1keydata
 
Sql database object
Sql database objectSql database object
Sql database objectYoung Alista
 
How to RSS Feed in Search Engine Optimization and their Benefits.
How to RSS Feed in Search Engine Optimization and their Benefits.How to RSS Feed in Search Engine Optimization and their Benefits.
How to RSS Feed in Search Engine Optimization and their Benefits.karthikzinavo
 

En vedette (15)

LocFaults: Une nouvelle approche basée sur les contraintes et dirigée par les...
LocFaults: Une nouvelle approche basée sur les contraintes et dirigée par les...LocFaults: Une nouvelle approche basée sur les contraintes et dirigée par les...
LocFaults: Une nouvelle approche basée sur les contraintes et dirigée par les...
 
Une approche incrémentale combinant les techniques BMC et un problème CSP pou...
Une approche incrémentale combinant les techniques BMC et un problème CSP pou...Une approche incrémentale combinant les techniques BMC et un problème CSP pou...
Une approche incrémentale combinant les techniques BMC et un problème CSP pou...
 
Sql xp 05
Sql xp 05Sql xp 05
Sql xp 05
 
Relational databe
Relational databeRelational databe
Relational databe
 
SQL: Unique IDs, Primary Keys and Archiving Inactive Rows Without Violating C...
SQL: Unique IDs, Primary Keys and Archiving Inactive Rows Without Violating C...SQL: Unique IDs, Primary Keys and Archiving Inactive Rows Without Violating C...
SQL: Unique IDs, Primary Keys and Archiving Inactive Rows Without Violating C...
 
8. sql
8. sql8. sql
8. sql
 
oracle Sql constraint
oracle  Sql constraint oracle  Sql constraint
oracle Sql constraint
 
Defense of Mohammed Bekkouche's PhD Thesis : "Combining techniques of Bounded...
Defense of Mohammed Bekkouche's PhD Thesis : "Combining techniques of Bounded...Defense of Mohammed Bekkouche's PhD Thesis : "Combining techniques of Bounded...
Defense of Mohammed Bekkouche's PhD Thesis : "Combining techniques of Bounded...
 
Constraints In Sql
Constraints In SqlConstraints In Sql
Constraints In Sql
 
SQL Tutorial - Table Constraints
SQL Tutorial - Table ConstraintsSQL Tutorial - Table Constraints
SQL Tutorial - Table Constraints
 
Sql database object
Sql database objectSql database object
Sql database object
 
Personal computer
Personal computerPersonal computer
Personal computer
 
How to RSS Feed in Search Engine Optimization and their Benefits.
How to RSS Feed in Search Engine Optimization and their Benefits.How to RSS Feed in Search Engine Optimization and their Benefits.
How to RSS Feed in Search Engine Optimization and their Benefits.
 
Villa San José
Villa San JoséVilla San José
Villa San José
 
Economy matters june 2013
Economy matters june 2013Economy matters june 2013
Economy matters june 2013
 

Similaire à Error localization

ACSAC2016: Code Obfuscation Against Symbolic Execution Attacks
ACSAC2016: Code Obfuscation Against Symbolic Execution AttacksACSAC2016: Code Obfuscation Against Symbolic Execution Attacks
ACSAC2016: Code Obfuscation Against Symbolic Execution AttacksSebastian Banescu
 
SSBSE 2020 keynote
SSBSE 2020 keynoteSSBSE 2020 keynote
SSBSE 2020 keynoteShiva Nejati
 
COSMOS: DevOps for Complex Cyber-physical Systems
COSMOS: DevOps for Complex Cyber-physical SystemsCOSMOS: DevOps for Complex Cyber-physical Systems
COSMOS: DevOps for Complex Cyber-physical SystemsSebastiano Panichella
 
CTF: Anomaly Detection in High-Dimensional Time Series with Coarse-to-Fine Mo...
CTF: Anomaly Detection in High-Dimensional Time Series with Coarse-to-Fine Mo...CTF: Anomaly Detection in High-Dimensional Time Series with Coarse-to-Fine Mo...
CTF: Anomaly Detection in High-Dimensional Time Series with Coarse-to-Fine Mo...ssuser9357dd
 
Optimizing an Earth Science Atmospheric Application with the OmpSs Programmin...
Optimizing an Earth Science Atmospheric Application with the OmpSs Programmin...Optimizing an Earth Science Atmospheric Application with the OmpSs Programmin...
Optimizing an Earth Science Atmospheric Application with the OmpSs Programmin...George Markomanolis
 
Abstractions and Directives for Adapting Wavefront Algorithms to Future Archi...
Abstractions and Directives for Adapting Wavefront Algorithms to Future Archi...Abstractions and Directives for Adapting Wavefront Algorithms to Future Archi...
Abstractions and Directives for Adapting Wavefront Algorithms to Future Archi...inside-BigData.com
 
Sampling-SDM2012_Jun
Sampling-SDM2012_JunSampling-SDM2012_Jun
Sampling-SDM2012_JunMDO_Lab
 
Iwsm2014 cosmic approximate sizing using a fuzzy logic approach (alain abran)
Iwsm2014   cosmic approximate sizing using a fuzzy logic approach (alain abran)Iwsm2014   cosmic approximate sizing using a fuzzy logic approach (alain abran)
Iwsm2014 cosmic approximate sizing using a fuzzy logic approach (alain abran)Nesma
 
Design & implementation of machine learning algorithm in (2)
Design & implementation of machine learning algorithm in (2)Design & implementation of machine learning algorithm in (2)
Design & implementation of machine learning algorithm in (2)saurabh Kumar Chaudhary
 
Approximation-Refinement Testing of Compute-Intensive Cyber-Physical Models: ...
Approximation-Refinement Testing of Compute-Intensive Cyber-Physical Models: ...Approximation-Refinement Testing of Compute-Intensive Cyber-Physical Models: ...
Approximation-Refinement Testing of Compute-Intensive Cyber-Physical Models: ...Lionel Briand
 
TMPA-2017: 5W+1H Static Analysis Report Quality Measure
TMPA-2017: 5W+1H Static Analysis Report Quality MeasureTMPA-2017: 5W+1H Static Analysis Report Quality Measure
TMPA-2017: 5W+1H Static Analysis Report Quality MeasureIosif Itkin
 
Improving the cosmic approximate sizing using the fuzzy logic epcu model al...
Improving the cosmic approximate sizing using the fuzzy logic epcu model   al...Improving the cosmic approximate sizing using the fuzzy logic epcu model   al...
Improving the cosmic approximate sizing using the fuzzy logic epcu model al...IWSM Mensura
 
VL/HCC 2014 - A Longitudinal Study of Programmers' Backtracking
VL/HCC 2014 - A Longitudinal Study of Programmers' BacktrackingVL/HCC 2014 - A Longitudinal Study of Programmers' Backtracking
VL/HCC 2014 - A Longitudinal Study of Programmers' BacktrackingYoungSeok Yoon
 
New software testing-techniques
New software testing-techniquesNew software testing-techniques
New software testing-techniquesFincy V.J
 
OCLR: A More Expressive, Pattern-Based Temporal Extension of OCL
OCLR: A More Expressive, Pattern-Based Temporal Extension of OCLOCLR: A More Expressive, Pattern-Based Temporal Extension of OCL
OCLR: A More Expressive, Pattern-Based Temporal Extension of OCLLionel Briand
 
ModelSelection1_WCSMO_2013_Ali
ModelSelection1_WCSMO_2013_AliModelSelection1_WCSMO_2013_Ali
ModelSelection1_WCSMO_2013_AliMDO_Lab
 

Similaire à Error localization (20)

ACSAC2016: Code Obfuscation Against Symbolic Execution Attacks
ACSAC2016: Code Obfuscation Against Symbolic Execution AttacksACSAC2016: Code Obfuscation Against Symbolic Execution Attacks
ACSAC2016: Code Obfuscation Against Symbolic Execution Attacks
 
SSBSE 2020 keynote
SSBSE 2020 keynoteSSBSE 2020 keynote
SSBSE 2020 keynote
 
COSMOS: DevOps for Complex Cyber-physical Systems
COSMOS: DevOps for Complex Cyber-physical SystemsCOSMOS: DevOps for Complex Cyber-physical Systems
COSMOS: DevOps for Complex Cyber-physical Systems
 
Testing
TestingTesting
Testing
 
CTF: Anomaly Detection in High-Dimensional Time Series with Coarse-to-Fine Mo...
CTF: Anomaly Detection in High-Dimensional Time Series with Coarse-to-Fine Mo...CTF: Anomaly Detection in High-Dimensional Time Series with Coarse-to-Fine Mo...
CTF: Anomaly Detection in High-Dimensional Time Series with Coarse-to-Fine Mo...
 
Optimizing an Earth Science Atmospheric Application with the OmpSs Programmin...
Optimizing an Earth Science Atmospheric Application with the OmpSs Programmin...Optimizing an Earth Science Atmospheric Application with the OmpSs Programmin...
Optimizing an Earth Science Atmospheric Application with the OmpSs Programmin...
 
Abstractions and Directives for Adapting Wavefront Algorithms to Future Archi...
Abstractions and Directives for Adapting Wavefront Algorithms to Future Archi...Abstractions and Directives for Adapting Wavefront Algorithms to Future Archi...
Abstractions and Directives for Adapting Wavefront Algorithms to Future Archi...
 
Sampling-SDM2012_Jun
Sampling-SDM2012_JunSampling-SDM2012_Jun
Sampling-SDM2012_Jun
 
Iwsm2014 cosmic approximate sizing using a fuzzy logic approach (alain abran)
Iwsm2014   cosmic approximate sizing using a fuzzy logic approach (alain abran)Iwsm2014   cosmic approximate sizing using a fuzzy logic approach (alain abran)
Iwsm2014 cosmic approximate sizing using a fuzzy logic approach (alain abran)
 
Design & implementation of machine learning algorithm in (2)
Design & implementation of machine learning algorithm in (2)Design & implementation of machine learning algorithm in (2)
Design & implementation of machine learning algorithm in (2)
 
Approximation-Refinement Testing of Compute-Intensive Cyber-Physical Models: ...
Approximation-Refinement Testing of Compute-Intensive Cyber-Physical Models: ...Approximation-Refinement Testing of Compute-Intensive Cyber-Physical Models: ...
Approximation-Refinement Testing of Compute-Intensive Cyber-Physical Models: ...
 
TMPA-2017: 5W+1H Static Analysis Report Quality Measure
TMPA-2017: 5W+1H Static Analysis Report Quality MeasureTMPA-2017: 5W+1H Static Analysis Report Quality Measure
TMPA-2017: 5W+1H Static Analysis Report Quality Measure
 
11 whiteboxtesting
11 whiteboxtesting11 whiteboxtesting
11 whiteboxtesting
 
Improving the cosmic approximate sizing using the fuzzy logic epcu model al...
Improving the cosmic approximate sizing using the fuzzy logic epcu model   al...Improving the cosmic approximate sizing using the fuzzy logic epcu model   al...
Improving the cosmic approximate sizing using the fuzzy logic epcu model al...
 
Debug me
Debug meDebug me
Debug me
 
VL/HCC 2014 - A Longitudinal Study of Programmers' Backtracking
VL/HCC 2014 - A Longitudinal Study of Programmers' BacktrackingVL/HCC 2014 - A Longitudinal Study of Programmers' Backtracking
VL/HCC 2014 - A Longitudinal Study of Programmers' Backtracking
 
New software testing-techniques
New software testing-techniquesNew software testing-techniques
New software testing-techniques
 
OCLR: A More Expressive, Pattern-Based Temporal Extension of OCL
OCLR: A More Expressive, Pattern-Based Temporal Extension of OCLOCLR: A More Expressive, Pattern-Based Temporal Extension of OCL
OCLR: A More Expressive, Pattern-Based Temporal Extension of OCL
 
Iwsm2014 cosmic approximate sizing using a fuzzy logic approach (alain abran)
Iwsm2014   cosmic approximate sizing using a fuzzy logic approach (alain abran)Iwsm2014   cosmic approximate sizing using a fuzzy logic approach (alain abran)
Iwsm2014 cosmic approximate sizing using a fuzzy logic approach (alain abran)
 
ModelSelection1_WCSMO_2013_Ali
ModelSelection1_WCSMO_2013_AliModelSelection1_WCSMO_2013_Ali
ModelSelection1_WCSMO_2013_Ali
 

Dernier

Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesManik S Magar
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesKari Kakkonen
 
Infrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platformsInfrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platformsYoss Cohen
 
Landscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdfLandscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdfAarwolf Industries LLC
 
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)Mark Simos
 
Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Kaya Weers
 
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...Jeffrey Haguewood
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxfnnc6jmgwh
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfNeo4j
 
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...itnewsafrica
 
Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#Karmanjay Verma
 
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...BookNet Canada
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch TuesdayIvanti
 
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...itnewsafrica
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
React Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkReact Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkPixlogix Infotech
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationKnoldus Inc.
 

Dernier (20)

Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examples
 
Infrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platformsInfrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platforms
 
Landscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdfLandscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdf
 
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
 
Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)
 
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdf
 
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
 
Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#
 
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch Tuesday
 
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
React Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkReact Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App Framework
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog Presentation
 

Error localization

  • 1. Draft Constraint-Based Error Localization Mohammed, Bekkouche, Hélène Collavizza, Michel Rueher University of Nice Sophia-Antipolis I3S – CNRS France Réunion VACSIM – 14 Octobre 2014
  • 2. Draft Problem Motivating example Experiments Conclusion Plan 1 Problem 2 Motivating example 3 Experiments 4 Conclusion Réunion VACSIM - Cachan Octobre 2014 Verifying FP-programs Michel Rueher 2
  • 3. Draft Problem Motivating example Experiments Conclusion Problem: informal presentation • Model checking, testing Generation of counterexamples • Input data & wrong output (testing) • Input data & violated post condition / property → Execution trace • Problems • Execution trace: often lengthy and difficult to understand • Location of the portions of code that contain errors → Very expensive Réunion VACSIM - Cachan Octobre 2014 Verifying FP-programs Michel Rueher 3
  • 4. Draft Problem Motivating example Experiments Conclusion Goals • Provide helpful information for error localization on numeric constraint systems • Two categories of information • How much of an unsatisfiable constraint set can be satisfied ? → Minimal Correction Set (MCS) MaxSAT, Max CSP, MaxFS • Where in the constraint set the “problem” lies ? → Minimal Unsatisfiable Core (MUC), Irreducible Inconsistent Subsystems (IIS) Réunion VACSIM - Cachan Octobre 2014 Verifying FP-programs Michel Rueher 4
  • 5. Draft Problem Motivating example Experiments Conclusion Definitions Réunion VACSIM - Cachan Octobre 2014 Verifying FP-programs Michel Rueher 5
  • 6. Draft Problem Motivating example Experiments Conclusion Computing all MCS : CAMUS (Liffiton & Sakallah-2007 Réunion VACSIM - Cachan Octobre 2014 Verifying FP-programs Michel Rueher 6
  • 7. Draft Problem Motivating example Experiments Conclusion Computing all MCS – Example Réunion VACSIM - Cachan Octobre 2014 Verifying FP-programs Michel Rueher 7
  • 8. Problem Motivating example Experiments Conclusion Computing one MUS from a set of MCSes (Liffiton & Sakallah-2007 Réunion VACSIM - Cachan Octobre 2014 Verifying FP-programs Michel Rueher 8
  • 9. Problem Motivating example Experiments Conclusion LocFaults → Computing MCS on programs with numerical computations • Input : • A faulty program: postcondition does not hold • A counter-example • Output : A small set of suspicious statements Réunion VACSIM - Cachan Octobre 2014 Verifying FP-programs Michel Rueher 9
  • 10. Problem Motivating example Experiments Conclusion LocFaults : détails (1) • Process 1 Building of the CFG of a program in DSA form 2 Translating of the program and its specification in a set of numerical constraints 3 ComputingMCS with the counter-example CE, constraints of the corresponding PATH and the postcondition POST Note : CSP C = CE ∪ PATH ∪ POST is inconsistant • Key points : MCS on paths “closely” related to the CE → Path of CE → Paths with at most k deviations from the CE Réunion VACSIM - Cachan Octobre 2014 Verifying FP-programs Michel Rueher 10
  • 11. Problem Motivating example Experiments Conclusion LocFaults : details (2) • Computing bounded MCS along the path of CE • DFS Exploration of the CFG : propagation of CE and at most k deviations of conditional statements: c1, .., ck : • C: contraints along the path before ck • IF P ∪ POST holds: • {¬c1, .., ¬ck } is a potential correction, • The MCS of C ∪ {¬c1, .., ¬ck } are potential corrections Réunion VACSIM - Cachan Octobre 2014 Verifying FP-programs Michel Rueher 11
  • 12. Problem Motivating example Experiments Conclusion Example (1) Program AbsMinus : an error has been introduced in line 10, thus for the input data {i = 0, j = 1}, it returns −1 Réunion VACSIM - Cachan Octobre 2014 Verifying FP-programs Michel Rueher 12
  • 13. Problem Motivating example Experiments Conclusion Example (2) Réunion VACSIM - Cachan Octobre 2014 Verifying FP-programs Michel Rueher 13
  • 14. Problem Motivating example Experiments Conclusion Example (3) Réunion VACSIM - Cachan Octobre 2014 Verifying FP-programs Michel Rueher 14
  • 15. Problem Motivating example Experiments Conclusion Experiments - Process systems and tools • LocFaults: → MIP solver of IBM ILOG CPLEX → CPBPV system to generate the CFG and CE → Benchmarks: Java programs • BugAssist: → MaxSAT solverMSUnCore2 → Benchmarks: ANSI-C programs Réunion VACSIM - Cachan Octobre 2014 Verifying FP-programs Michel Rueher 15
  • 16. Problem Motivating example Experiments Conclusion Experiments - Benchmarks • TCAS : an aircraft collision avoidance system. The program contains 173 lines of C code with almost no arithmetic operations. The suite contains 41 faulty versions • Tritype takes three positive integers as inputs (i, j, k) the triangle sides, and returns the value 2 if the inputs correspond to an isosceles triangle, the value 3 if they correspond to an equilateral triangle, the value 1 if they correspond to some other triangle, and the value 4 otherwise. Réunion VACSIM - Cachan Octobre 2014 Verifying FP-programs Michel Rueher 16
  • 17. Problem Motivating example Experiments Conclusion Experiments - Results on TCAS suite • Computation times: no significant difference • At most one deviation required except for version V41 where two deviations were required • Size of the set of suspicious instructions identified by BUGASSISTin general larger than the sum of the sizes of the sets of suspicious instructions generated by LOCFAULTS • BUGASSISTidentifies a bit more errors than LOCFAULTS • LOCFAULTSreports a set of MCS for each faulty path → the error localization process is much more easier than with the single set of suspicious errors reported by BUGASSIST Réunion VACSIM - Cachan Octobre 2014 Verifying FP-programs Michel Rueher 17
  • 18. Problem Motivating example Experiments Conclusion Experiments - Error on Tritype • TritypeV1 : error in the last assignment statement of the program • TritypeV2 : error in a nested condition, just before the last assignment • TritypeV3 : the error an assignment and will entail a bad branching • TritypeV4: error in condition, at the beginning of the program • TritypeV5 : wo wrong conditions in this program • TritypeV6 : a variation that returns the perimeter of the triangle • TritypeV7 : a variation that computes the square of the surface of the triangle by using Heron’s formula Réunion VACSIM - Cachan Octobre 2014 Verifying FP-programs Michel Rueher 18
  • 19. Problem Motivating example Experiments Conclusion Experiments - Results on Tritype (2) Réunion VACSIM - Cachan Octobre 2014 Verifying FP-programs Michel Rueher 19
  • 20. Problem Motivating example Experiments Conclusion Experiments - Results on Tritype (3) Program LocFaults BugAssist P L P L = 0 ≤ 1 ≤ 2 ≤ 3 TritypeV7 0, 722s 0, 051s 0, 112s 0, 119s 0, 144s 0, 140s 20, 373s TritypeV8 0, 731s 0, 08s 0, 143s 0, 156s 0, 162s 0, 216s 25, 562s Computation times for non linear Trityp programs Réunion VACSIM - Cachan Octobre 2014 Verifying FP-programs Michel Rueher 20
  • 21. Problem Motivating example Experiments Conclusion Conclusion and Discussion • Flow-based and incremental approach of LOCFAULTSis a good way to help the programmer with bug hunting since it locates the errors around the path of t he counter-example • Constraint-based framework is well adapted for handling arithmetic operations and it can be extended in straightforward way for handling programs with floating-point numbers computations Réunion VACSIM - Cachan Octobre 2014 Verifying FP-programs Michel Rueher 21