All about Maude ? a high-performance logical framework: how to specify, program and verify systems in Rewriting Logic, 2007. ,
Towards a unified theory of operational and axiomatic semantics, Proceedings of the 39th International Colloquium on Automata, Languages and Programming (ICALP'12), pp.2012-351 ,
Checking reachability using matching logic, Proceedings of the 27th Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA'12), pp.555-574, 2012. ,
One-path reachability logic, Proceedings of the 28th Symposium on Logic in Computer Science (LICS'13), pp.358-367, 2013. ,
All-path reachability logic, Proceedings of the Joint 25th International Conference on Rewriting Techniques and Applications and 12th International Conference on Typed Lambda Calculi and Applications (RTA- TLCA'14), pp.425-440, 2014. ,
A Hoare Logic for the State Monad, Theorem Proving in Higher Order Logics, 22nd International Conference. Proceedings, pp.440-451, 2009. ,
DOI : 10.1145/143165.143169
Semantics-based program verifiers for all languages, Proceedings of the 31th Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOP- SLA'16), 2016. ,
Arusoaie, A Generic Framework for Symbolic Execution: a Coinductive Approach, Journal of Symbolic Computation ,
DOI : 10.1016/j.jsc.2016.07.012
URL : https://hal.inria.fr/hal-01238696/document
Language definitions as rewrite theories, Journal of Logical and Algebraic Methods in Programming, vol.85, issue.1, pp.98-120, 2016. ,
DOI : 10.1016/j.jlamp.2015.09.001
URL : https://hal.archives-ouvertes.fr/hal-00950775
A language-independent proof system for full program equivalence, Formal Asp, Comput, vol.28, issue.3, pp.469-497, 2016. ,
Symbolic execution based on language transformation, Computer Languages, Systems & Structures, vol.44, pp.48-71, 2015. ,
DOI : 10.1016/j.cl.2015.08.004
URL : https://hal.archives-ouvertes.fr/hal-01186008
Program equivalence by circular reasoning, Formal Asp, Comput, vol.27, issue.4, pp.701-726, 2015. ,
DOI : 10.1007/s00165-014-0319-6
URL : http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.372.5602
Symbolic execution and program testing, Communications of the ACM, vol.19, issue.7, pp.385-394, 1976. ,
DOI : 10.1145/360248.360252
Symbolic PathFinder: symbolic execution of Java bytecode, International Conference on Automated Software Engineering , ASE'10, pp.179-180, 2010. ,
DART: directed automated random testing, Proceedings of the ACM SIGPLAN 2005 Conference on Programming Language Design and Implementation, pp.213-223, 2005. ,
CUTE: a concolic unit testing engine for C, in: Proceedings of the 10th European software engineering conference held jointly with 13th ACM SIGSOFT international symposium on Foundations of software engineering, pp.263-272, 2005. ,
EXE: automatically generating inputs of death, ACM Conference on Computer and Communications Security, pp.322-335, 2006. ,
Parameterized Unit Testing with Pex, Second International Conference, pp.171-181, 2008. ,
DOI : 10.1007/978-3-540-79124-9_12
Klee: unassisted and automatic generation of high-coverage tests for complex systems programs, Proc. 8th USENIX conference on Operating systems design and implementation, OSDI'08, pp.209-224, 2008. ,
Using symbolic execution for verifying safety-critical systems, ACM SIGSOFT Software Engineering Notes, vol.26, issue.5, pp.142-151, 2001. ,
DOI : 10.1145/503271.503230
URL : http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.23.9662
TRACER: A Symbolic Execution Tool for Verification, Computer Aided Verification -24th International Conference Proceedings, pp.758-766, 2012. ,
DOI : 10.1007/978-3-642-31424-7_61
URL : http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.221.2475
Practical, Low-Effort Equivalence Verification of Real Code, Proceedings of the 23rd international conference on Computer aided verification, pp.669-685, 2011. ,
DOI : 10.1109/FMCAD.2008.ECP.10
Formal verification of a realistic compiler, Communications of the ACM, vol.52, issue.7, pp.107-115, 2009. ,
DOI : 10.1145/1538788.1538814
URL : https://hal.archives-ouvertes.fr/inria-00415861
Translation validation for an optimizing compiler, PLDI, ACM, pp.83-94, 2000. ,
DOI : 10.1145/349299.349314
URL : http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.35.2567
Operational semantics and program equivalence Advanced Lectures, Applied Semantics, International Summer School, pp.378-412, 2000. ,
DOI : 10.1007/3-540-45699-6_8
URL : http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.12.166
Formal Verification of Backward Compatibility of Microcode, CAV, pp.185-198, 2005. ,
DOI : 10.1007/11513988_20
Proving the Equivalence of CLP Programs, ICLP, pp.287-301, 2002. ,
DOI : 10.1007/3-540-45619-8_20
Regression Verification: Proving the Equivalence of Similar Programs, CAV, p.63, 2009. ,
DOI : 10.1007/978-3-642-02658-4_8
Inference Rules for Proving the Equivalence of Recursive Procedures, Essays in Memory of Amir Pnueli, pp.167-184, 2010. ,
DOI : 10.1007/BFb0055057
Abstract logical model checking of infinitestate systems using narrowing, 24th International Conference on Rewriting Techniques and Applications, RTA 2013 of LIPIcs, Schloss Dagstuhl -Leibniz-Zentrum fuer Informatik, pp.81-96, 2013. ,
Rewriting modulo SMT and open system analysis, in: Rewriting Logic and Its Applications -10th International Workshop, WRLA 2014, Held as a Satellite Event of ETAPS, pp.247-262, 2014. ,
Rewriting modulo {SMT} and open system analysis, Journal of Logical and Algebraic Methods in Programming, 2016. ,
DOI : 10.1016/j.jlamp.2016.10.001
URL : http://hdl.handle.net/2060/20150014338
A Generic Framework for Symbolic Execution, 6th International Conference on Software Language Engineering, pp.281-301, 2013. ,
DOI : 10.1007/978-3-319-02654-1_16
URL : https://hal.archives-ouvertes.fr/hal-00853588
Proving Reachability-Logic Formulas Incrementally, Revised Selected Papers Lecture Notes in Computer Science, vol.10, issue.2, pp.134-151, 2016. ,
DOI : 10.1007/978-3-642-37036-6_8
URL : https://hal.archives-ouvertes.fr/hal-01282379
Matching Logic: An Alternative to Hoare/Floyd Logic, Proceedings of the 13th International Conference on Algebraic Methodology And Software Technology (AMAST '10), pp.142-162, 2010. ,
DOI : 10.1145/514188.514190
Matching Logic: A New Program Verification Approach (NIER Track, ICSE'11: Proceedings of the 30th International Conference on Software Engineering, pp.868-871, 2011. ,
Matching logic ? extended abstract, Proceedings of the 26th International Conference on Rewriting Techniques and Applications (RTA'15) of Leibniz International Proceedings in Informatics (LIPIcs), Schloss Dagstuhl?Leibniz-Zentrum fuer Informatik, pp.5-21, 2015. ,
we also have (?, µ ) |= ? l ?? l . Thus, using the unquantified version of ?, i.e., ? ? l ?? l ? ? r ?? r , we obtain ? ? ? ? . We can now apply Lemma 8 and obtain a pattern ? ? ? with FreeVars(? ? ? ) ? V ar b such that ??? ? s ? ? ?? and (? , ? ) |= ? ?? , for some valuation ? such that ? | FreeVars(???) = ?| FreeVars(???) ,
? ? ? ? (? l ? ? r ), with ? ? ? Id| Var \FreeVars(? l ) and ? : FreeVars(? l ) ? T ? (FreeVars(?)) ? match? = (?, ? l ) Let ? (?X, Y )(? (? r ) ? ? ? ? (? l ? ? r ) By Def ,
FreeVars(?) ? (FreeVars(? r ) \ FreeVars ,
But (FreeVars(?) \ X) ? FreeVars(?) and by Assumption 1, FreeVars(? r ) \ Y ) \ FreeVars(? l ) = ?. Hence, FreeVars(? (? r )) ? FreeVars(?) ,
? FreeVars(? (? l )) using Assumption 1, and we obtain FreeVars(? (? l )) ? FreeVars(?), and then FreeVars ,
Assumption 1 we have FreeVars(? r ) ? FreeVars(? l ) ? Y , thus, FreeVars(? (? r )) ? FreeVars(?)?Y, We then obtain FreeVars(? (? r ))\(X ?Y ) ? ,
Let ? (?X)??? and ? ? l ?? l ? (?Y )? r ?? r . Thus we have ? = (?X, Y )? (? r )?(? ? ? (? r ) ? ? (? l )) for some substitution ? : FreeVars(? l ) ? ,