SlideShare a Scribd company logo
Fuzzing and Verifying RAT Refutations with Deletion Information
Walter Forkel, Tobias Philipp, Adri´an Rebola-Pardo, Elias Werner
Introduction
SAT solvers are common tools in the industry
Unfortunately, SAT solvers contain bugs
DRAT format is the de facto standard for emitting unsatisfiable proofs
F SAT solver
SAT
UNSAT, P checker
Single Point of Failure
Are there any unknown bugs in the checker ?
Background
Tautological clause: clause containing A and ¬A for some variable A
Resolvent of C, D with A ∈ C and ¬A ∈ D is (C  {A}) ∪ (D  {¬A})
Asymmetric Tautology (AT)
Asymmetric Literal Addition (ALA):
alaF (C) = C ∪ {L | L1, ..., Ln, L ∈ F and Li ∈ C for all 1 ≤ i ≤ n}
C is an AT wrt F if there is n ∈ N such that alaF (C) ↑ n is a tautology
Resolution Asymmetric Tautology (RAT)
C is a RAT upon literal L wrt the formula F if
1. C is an AT wrt the formula F, or
2. L ∈ C, and all resolvents of C with any D ∈ F upon L are AT wrt F
DRAT Refutation
Finite sequence of addition and deletion instructions to the empty clause
Each added clause is a RAT wrt the preceding clauses
Our Approach: Fuzzing DRAT Refutations and Check Against a Fully Mechanically Verified Checker
1 2 3 4 5
random formula
generation
SAT solver
checkers
classify P
Verified Checker in Coq
modifier
checkers
classify P
Verified Checker in Coq
F unsatisfiable
proof P
F satisfiable
F all
accept P
inconsistent
P
inconsistent
all reject P
Example
F =
{p, q}
{p, q}
{p, q}
{p, q}
P =
a {¬r} RAT upon ¬r
a {r, p} AT
a {r} AT
d {p, q} deletion
d {¬p, q} deletion
d {p, ¬q} deletion
d {¬p, ¬q} deletion
d {} AT
drat-trim and drat-fc
classify P as accepted
add r to the first clause
P =
a {¬r, r} RAT upon ¬r
a {r, p} AT
a {r} AT
d {p, q} deletion
d {¬p, q} deletion
d {p, ¬q} deletion
d {¬p, ¬q} deletion
d {} AT
drat-trim rejects P
drat-fc accepts P
Our verified checker also
accepts P
Found a bug in drat-trim
Results
Formulas: 2900 clauses, 800 variables on average
Resulting proofs: 2100 steps on average
drat-trim rejects DRAT refutations containing tautological clauses
proofcheck rejects DRAT refutations in which unit clauses are deleted
DRAT emission procedure in the SAT solver minisat constructs
unexpected DRAT refutations of the form (a {})(d C)(a {})
Conclusion
DRAT checkers proofcheck and drat-trim contain bugs
New fuzzing technique that automatically finds bugs in checkers
Our verified DRAT checker is complete
Future Work: adapt the checker and fuzzing procedure to other proof
formats
Code available at github.com/drat-tools
Acknowledgement: This work was supported by RiSE, LogiCS and WWTF grant VRG11-005
FLAIRS 30

More Related Content

What's hot

LL(1) parsing
LL(1) parsingLL(1) parsing
LL(1) parsing
KHYATI PATEL
 
Chapter Five(2)
Chapter Five(2)Chapter Five(2)
Chapter Five(2)bolovv
 
Time series forecasting with ARIMA
Time series forecasting with ARIMATime series forecasting with ARIMA
Time series forecasting with ARIMA
Yury Kashnitsky
 
Push down automata
Push down automataPush down automata
Push down automata
Ratnakar Mikkili
 
Complete and Interpretable Conformance Checking of Business Processes
Complete and Interpretable Conformance Checking of Business ProcessesComplete and Interpretable Conformance Checking of Business Processes
Complete and Interpretable Conformance Checking of Business Processes
Marlon Dumas
 
ω Automaton
ω Automatonω Automaton
ω Automaton
Abdul Haseeb
 
Incremental and Interactive Process Model Repair
Incremental and Interactive Process Model RepairIncremental and Interactive Process Model Repair
Incremental and Interactive Process Model Repair
Marlon Dumas
 
Context free grammar
Context free grammarContext free grammar
Context free grammar
Ratnakar Mikkili
 
Simplification of cfg ppt
Simplification of cfg pptSimplification of cfg ppt
Simplification of cfg ppt
Shiela Rani
 
Linear logic (and Linear Lisp)
Linear logic (and Linear Lisp)Linear logic (and Linear Lisp)
Linear logic (and Linear Lisp)
Sosuke MORIGUCHI
 
PUSH DOWN AUTOMATA VS TURING MACHINE
PUSH DOWN AUTOMATA VS TURING MACHINEPUSH DOWN AUTOMATA VS TURING MACHINE
PUSH DOWN AUTOMATA VS TURING MACHINE
Abhishek Shivhare
 
Lecture 03 lexical analysis
Lecture 03 lexical analysisLecture 03 lexical analysis
Lecture 03 lexical analysis
Iffat Anjum
 
Finite Automata: Deterministic And Non-deterministic Finite Automaton (DFA)
Finite Automata: Deterministic And Non-deterministic Finite Automaton (DFA)Finite Automata: Deterministic And Non-deterministic Finite Automaton (DFA)
Finite Automata: Deterministic And Non-deterministic Finite Automaton (DFA)
Mohammad Ilyas Malik
 
Generazione Automatica di Test - S. Vuotto (Università di Sassari)
Generazione Automatica di Test - S. Vuotto (Università di Sassari)Generazione Automatica di Test - S. Vuotto (Università di Sassari)
Generazione Automatica di Test - S. Vuotto (Università di Sassari)
Sardegna Ricerche
 
Push down automata
Push down automataPush down automata
Push down automataSomya Bagai
 
push down automata
push down automatapush down automata
push down automata
Christopher Chizoba
 
Polish Notation In Data Structure
Polish Notation In Data StructurePolish Notation In Data Structure
Polish Notation In Data Structure
Meghaj Mallick
 

What's hot (20)

LL(1) parsing
LL(1) parsingLL(1) parsing
LL(1) parsing
 
Chapter Five(2)
Chapter Five(2)Chapter Five(2)
Chapter Five(2)
 
Time series forecasting with ARIMA
Time series forecasting with ARIMATime series forecasting with ARIMA
Time series forecasting with ARIMA
 
Ch4a
Ch4aCh4a
Ch4a
 
Push down automata
Push down automataPush down automata
Push down automata
 
Ch4b
Ch4bCh4b
Ch4b
 
Complete and Interpretable Conformance Checking of Business Processes
Complete and Interpretable Conformance Checking of Business ProcessesComplete and Interpretable Conformance Checking of Business Processes
Complete and Interpretable Conformance Checking of Business Processes
 
ω Automaton
ω Automatonω Automaton
ω Automaton
 
Incremental and Interactive Process Model Repair
Incremental and Interactive Process Model RepairIncremental and Interactive Process Model Repair
Incremental and Interactive Process Model Repair
 
Context free grammar
Context free grammarContext free grammar
Context free grammar
 
Topdown parsing
Topdown parsingTopdown parsing
Topdown parsing
 
Simplification of cfg ppt
Simplification of cfg pptSimplification of cfg ppt
Simplification of cfg ppt
 
Linear logic (and Linear Lisp)
Linear logic (and Linear Lisp)Linear logic (and Linear Lisp)
Linear logic (and Linear Lisp)
 
PUSH DOWN AUTOMATA VS TURING MACHINE
PUSH DOWN AUTOMATA VS TURING MACHINEPUSH DOWN AUTOMATA VS TURING MACHINE
PUSH DOWN AUTOMATA VS TURING MACHINE
 
Lecture 03 lexical analysis
Lecture 03 lexical analysisLecture 03 lexical analysis
Lecture 03 lexical analysis
 
Finite Automata: Deterministic And Non-deterministic Finite Automaton (DFA)
Finite Automata: Deterministic And Non-deterministic Finite Automaton (DFA)Finite Automata: Deterministic And Non-deterministic Finite Automaton (DFA)
Finite Automata: Deterministic And Non-deterministic Finite Automaton (DFA)
 
Generazione Automatica di Test - S. Vuotto (Università di Sassari)
Generazione Automatica di Test - S. Vuotto (Università di Sassari)Generazione Automatica di Test - S. Vuotto (Università di Sassari)
Generazione Automatica di Test - S. Vuotto (Università di Sassari)
 
Push down automata
Push down automataPush down automata
Push down automata
 
push down automata
push down automatapush down automata
push down automata
 
Polish Notation In Data Structure
Polish Notation In Data StructurePolish Notation In Data Structure
Polish Notation In Data Structure
 

Similar to Fuzzing and Verifying RAT Refutations with Deletion Information

Cerutti -- TAFA2013
Cerutti -- TAFA2013Cerutti -- TAFA2013
Cerutti -- TAFA2013
Federico Cerutti
 
Arima model (time series)
Arima model (time series)Arima model (time series)
Arima model (time series)
Kumar P
 
TMPA-2017: The Quest for Average Response Time
TMPA-2017: The Quest for Average Response TimeTMPA-2017: The Quest for Average Response Time
TMPA-2017: The Quest for Average Response Time
Iosif Itkin
 
Presentation1
Presentation1Presentation1
Presentation1emitche6
 
Discrete mathematics
Discrete mathematicsDiscrete mathematics
Discrete mathematics
M.Saber
 
Consistency proof of a feasible arithmetic inside a bounded arithmetic
Consistency proof of a feasible arithmetic inside a bounded arithmeticConsistency proof of a feasible arithmetic inside a bounded arithmetic
Consistency proof of a feasible arithmetic inside a bounded arithmetic
Yamagata Yoriyuki
 
Arima
ArimaArima
A SCC Recursive Meta-Algorithm for Computing Preferred Labellings in Abstract...
A SCC Recursive Meta-Algorithm for Computing Preferred Labellings in Abstract...A SCC Recursive Meta-Algorithm for Computing Preferred Labellings in Abstract...
A SCC Recursive Meta-Algorithm for Computing Preferred Labellings in Abstract...
Federico Cerutti
 
Logic worksheet
Logic worksheetLogic worksheet
Logic worksheet
AlejandroBuhia
 

Similar to Fuzzing and Verifying RAT Refutations with Deletion Information (11)

Cerutti -- TAFA2013
Cerutti -- TAFA2013Cerutti -- TAFA2013
Cerutti -- TAFA2013
 
Arima model (time series)
Arima model (time series)Arima model (time series)
Arima model (time series)
 
TMPA-2017: The Quest for Average Response Time
TMPA-2017: The Quest for Average Response TimeTMPA-2017: The Quest for Average Response Time
TMPA-2017: The Quest for Average Response Time
 
Presentation1
Presentation1Presentation1
Presentation1
 
Discrete mathematics
Discrete mathematicsDiscrete mathematics
Discrete mathematics
 
Consistency proof of a feasible arithmetic inside a bounded arithmetic
Consistency proof of a feasible arithmetic inside a bounded arithmeticConsistency proof of a feasible arithmetic inside a bounded arithmetic
Consistency proof of a feasible arithmetic inside a bounded arithmetic
 
Logic
LogicLogic
Logic
 
Arima
ArimaArima
Arima
 
A SCC Recursive Meta-Algorithm for Computing Preferred Labellings in Abstract...
A SCC Recursive Meta-Algorithm for Computing Preferred Labellings in Abstract...A SCC Recursive Meta-Algorithm for Computing Preferred Labellings in Abstract...
A SCC Recursive Meta-Algorithm for Computing Preferred Labellings in Abstract...
 
Logic worksheet
Logic worksheetLogic worksheet
Logic worksheet
 
4. symbolic logic
4. symbolic logic4. symbolic logic
4. symbolic logic
 

More from Tobias Philipp

An Expressive Model for Instance Decomposition Based Parallel SAT Solvers
An Expressive Model for Instance Decomposition Based Parallel SAT SolversAn Expressive Model for Instance Decomposition Based Parallel SAT Solvers
An Expressive Model for Instance Decomposition Based Parallel SAT Solvers
Tobias Philipp
 
Unsatisfiability Proofs for Parallel SAT Solver Portfolios with Clause Sharin...
Unsatisfiability Proofs for Parallel SAT Solver Portfolios with Clause Sharin...Unsatisfiability Proofs for Parallel SAT Solver Portfolios with Clause Sharin...
Unsatisfiability Proofs for Parallel SAT Solver Portfolios with Clause Sharin...
Tobias Philipp
 
A Verified Decision Procedure for Pseudo-Boolean Formulas
A Verified Decision Procedure for Pseudo-Boolean FormulasA Verified Decision Procedure for Pseudo-Boolean Formulas
A Verified Decision Procedure for Pseudo-Boolean Formulas
Tobias Philipp
 
PBLib - A Library for Encoding Pseudo-Boolean Constraints into CNF
PBLib - A Library for Encoding Pseudo-Boolean Constraints into CNFPBLib - A Library for Encoding Pseudo-Boolean Constraints into CNF
PBLib - A Library for Encoding Pseudo-Boolean Constraints into CNF
Tobias Philipp
 
The Complexity of Contextual Abduction in Human Reasoning Tasks
The Complexity of Contextual Abduction in Human Reasoning TasksThe Complexity of Contextual Abduction in Human Reasoning Tasks
The Complexity of Contextual Abduction in Human Reasoning Tasks
Tobias Philipp
 
Checking Unsatisfiability Proofs in Parallel
Checking Unsatisfiability Proofs in ParallelChecking Unsatisfiability Proofs in Parallel
Checking Unsatisfiability Proofs in Parallel
Tobias Philipp
 
Anwendungen der Logik in der IT-Sicherheit
Anwendungen der Logik in der IT-SicherheitAnwendungen der Logik in der IT-Sicherheit
Anwendungen der Logik in der IT-Sicherheit
Tobias Philipp
 
Formal Verification with Ada/SPARK
Formal Verification with Ada/SPARKFormal Verification with Ada/SPARK
Formal Verification with Ada/SPARK
Tobias Philipp
 
Formale Verifikation von Answer Set Programming
Formale Verifikation von Answer Set ProgrammingFormale Verifikation von Answer Set Programming
Formale Verifikation von Answer Set Programming
Tobias Philipp
 

More from Tobias Philipp (9)

An Expressive Model for Instance Decomposition Based Parallel SAT Solvers
An Expressive Model for Instance Decomposition Based Parallel SAT SolversAn Expressive Model for Instance Decomposition Based Parallel SAT Solvers
An Expressive Model for Instance Decomposition Based Parallel SAT Solvers
 
Unsatisfiability Proofs for Parallel SAT Solver Portfolios with Clause Sharin...
Unsatisfiability Proofs for Parallel SAT Solver Portfolios with Clause Sharin...Unsatisfiability Proofs for Parallel SAT Solver Portfolios with Clause Sharin...
Unsatisfiability Proofs for Parallel SAT Solver Portfolios with Clause Sharin...
 
A Verified Decision Procedure for Pseudo-Boolean Formulas
A Verified Decision Procedure for Pseudo-Boolean FormulasA Verified Decision Procedure for Pseudo-Boolean Formulas
A Verified Decision Procedure for Pseudo-Boolean Formulas
 
PBLib - A Library for Encoding Pseudo-Boolean Constraints into CNF
PBLib - A Library for Encoding Pseudo-Boolean Constraints into CNFPBLib - A Library for Encoding Pseudo-Boolean Constraints into CNF
PBLib - A Library for Encoding Pseudo-Boolean Constraints into CNF
 
The Complexity of Contextual Abduction in Human Reasoning Tasks
The Complexity of Contextual Abduction in Human Reasoning TasksThe Complexity of Contextual Abduction in Human Reasoning Tasks
The Complexity of Contextual Abduction in Human Reasoning Tasks
 
Checking Unsatisfiability Proofs in Parallel
Checking Unsatisfiability Proofs in ParallelChecking Unsatisfiability Proofs in Parallel
Checking Unsatisfiability Proofs in Parallel
 
Anwendungen der Logik in der IT-Sicherheit
Anwendungen der Logik in der IT-SicherheitAnwendungen der Logik in der IT-Sicherheit
Anwendungen der Logik in der IT-Sicherheit
 
Formal Verification with Ada/SPARK
Formal Verification with Ada/SPARKFormal Verification with Ada/SPARK
Formal Verification with Ada/SPARK
 
Formale Verifikation von Answer Set Programming
Formale Verifikation von Answer Set ProgrammingFormale Verifikation von Answer Set Programming
Formale Verifikation von Answer Set Programming
 

Recently uploaded

Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
KatiaHIMEUR1
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
BookNet Canada
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
mikeeftimakis1
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
Ralf Eggert
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
91mobiles
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
Alpen-Adria-Universität
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
Prayukth K V
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
Alex Pruden
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
Aftab Hussain
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
Guy Korland
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
sonjaschweigert1
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Albert Hoitingh
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
Dorra BARTAGUIZ
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
Sri Ambati
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
OnBoard
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 

Recently uploaded (20)

Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 

Fuzzing and Verifying RAT Refutations with Deletion Information

  • 1. Fuzzing and Verifying RAT Refutations with Deletion Information Walter Forkel, Tobias Philipp, Adri´an Rebola-Pardo, Elias Werner Introduction SAT solvers are common tools in the industry Unfortunately, SAT solvers contain bugs DRAT format is the de facto standard for emitting unsatisfiable proofs F SAT solver SAT UNSAT, P checker Single Point of Failure Are there any unknown bugs in the checker ? Background Tautological clause: clause containing A and ¬A for some variable A Resolvent of C, D with A ∈ C and ¬A ∈ D is (C {A}) ∪ (D {¬A}) Asymmetric Tautology (AT) Asymmetric Literal Addition (ALA): alaF (C) = C ∪ {L | L1, ..., Ln, L ∈ F and Li ∈ C for all 1 ≤ i ≤ n} C is an AT wrt F if there is n ∈ N such that alaF (C) ↑ n is a tautology Resolution Asymmetric Tautology (RAT) C is a RAT upon literal L wrt the formula F if 1. C is an AT wrt the formula F, or 2. L ∈ C, and all resolvents of C with any D ∈ F upon L are AT wrt F DRAT Refutation Finite sequence of addition and deletion instructions to the empty clause Each added clause is a RAT wrt the preceding clauses Our Approach: Fuzzing DRAT Refutations and Check Against a Fully Mechanically Verified Checker 1 2 3 4 5 random formula generation SAT solver checkers classify P Verified Checker in Coq modifier checkers classify P Verified Checker in Coq F unsatisfiable proof P F satisfiable F all accept P inconsistent P inconsistent all reject P Example F = {p, q} {p, q} {p, q} {p, q} P = a {¬r} RAT upon ¬r a {r, p} AT a {r} AT d {p, q} deletion d {¬p, q} deletion d {p, ¬q} deletion d {¬p, ¬q} deletion d {} AT drat-trim and drat-fc classify P as accepted add r to the first clause P = a {¬r, r} RAT upon ¬r a {r, p} AT a {r} AT d {p, q} deletion d {¬p, q} deletion d {p, ¬q} deletion d {¬p, ¬q} deletion d {} AT drat-trim rejects P drat-fc accepts P Our verified checker also accepts P Found a bug in drat-trim Results Formulas: 2900 clauses, 800 variables on average Resulting proofs: 2100 steps on average drat-trim rejects DRAT refutations containing tautological clauses proofcheck rejects DRAT refutations in which unit clauses are deleted DRAT emission procedure in the SAT solver minisat constructs unexpected DRAT refutations of the form (a {})(d C)(a {}) Conclusion DRAT checkers proofcheck and drat-trim contain bugs New fuzzing technique that automatically finds bugs in checkers Our verified DRAT checker is complete Future Work: adapt the checker and fuzzing procedure to other proof formats Code available at github.com/drat-tools Acknowledgement: This work was supported by RiSE, LogiCS and WWTF grant VRG11-005 FLAIRS 30