ABSTRACT
Source to source semantic preserving transformations have been carried out by compiler or several human guided transformations. If the semantics preserving transformations carried out wrongly it gives the software bug. So it is very important to establish equivalence between the original and the counter part. This paper presents a translation validation tool for verifying optimizing and parallelizing code transformations by checking equivalence between two PRES+ models; one corresponds the source program and other corresponds its counterpart.
- Soumyadip Bandyopadhyay, Dipankar Sarkar, Kunal Banerjee, and Chittaranjan A. Mandal. 2015. A Path-based Equivalence Checking Method for Petri Net based Models of Programs. In ICSOFT-EA 2015 - Proceedings of the 10th International Conference on Software Engineering and Applications, Colmar, Alsace, France, 20-22 July, 2015. 319--329.Google Scholar
- Soumyadip Bandyopadhyay, Dipankar Sarkar, and Chittaranjan Mandal. 2018. Equivalence checking of Petri net models of programs using static and dynamic cut-points. Acta Informatica (23 Apr 2018).Google Scholar
- Soumyadip Bandyopadhyay, Dipankar Sarkar, and Chittaranjan A. Mandal. 2015. Validating SPARK: High Level Synthesis Compiler. In 2015 IEEE Computer Society Annual Symposium on VLSI, ISVLSI 2015, Montpellier, France, July 8-10, 2015. 195--198.Google Scholar
- Soumyadip Bandyopadhyay, Dipankar Sarkar, and Chittaranjan A. Mandal. 2016. An efficient path based equivalence checking for Petri net based models of programs. In Proceedings of the 9th India Software Engineering Conference, Goa, India, February 18-20, 2016. 70--79. Google ScholarDigital Library
- Soumyadip Bandyopadhyay, Dipankar Sarkar, Chittaranjan A. Mandal, Kunal Banerjee, and Krishnam Raju Duddu. 2016. A Path Construction Algorithm for Translation Validation Using PRES+ Models. Parallel Processing Letters 26, 2 (2016), 1--25.Google ScholarCross Ref
- Soumyadip Bandyopadhyay, Santonu Sarkar, Dipankar Sarkar, and Chittaranjan A. Mandal. 2017. SamaTulyata: An Efficient Path Based Equivalence Checking Tool. In Automated Technology for Verification and Analysis - 15th International Symposium, ATVA 2017, Pune, India, October 3-6, 2017, Proceedings. 109--116.Google Scholar
- K. Banerjee, C. Karfa, D. Sarkar, and C. Mandal. 2014. Verification of Code Motion Techniques Using Value Propagation. IEEE TCAD 33, 8 (2014).Google Scholar
- L.A Cortes, P. Eles, and Zebo Peng. 2000. Verification of embedded systems using a Petri net based representation. In System Synthesis, 2000. Proceedings. The 13th International Symposium on. 149--155. Google ScholarDigital Library
- S. Gupta, N. Dutt, R Gupta, and A. Nicolau. 2003. SPARK: a high-level synthesis framework for applying parallelizing compiler transformations. In Proc. of Int. Conf. on VLSI Design. IEEE Computer Society, Washington, DC, USA, 461--466. Google ScholarDigital Library
- Chandan Karfa, C Mandal, and Dipankar Sarkar. 2012. Formal verification of code motion techniques using data-flow-driven equivalence checking. ACM Trans. Design Autom. Electr. Syst. 17, 3 (2012), 30. Google ScholarDigital Library
- A. Kundig, R. E. Suhrer, and J. Dahler. 1986. Embedded Systems: New approaches to their formal description and design. Springer-Verlag. Google ScholarDigital Library
- S. Kundu, S. Lerner, and R. Gupta. 2008. Validating High-Level Synthesis. In Proceedings of the 20th international conference on Computer Aided Verification (CAV '08). Springer-Verlag, Berlin, Heidelberg, 459--472. Google ScholarDigital Library
- Peter Marwedel. 2006. Embedded System Design. Springer(India) Private Limited, New Delhi, India. Google ScholarDigital Library
- Chen Xi, Lu JianHua, Zhou ZuCheng, and Shang YaoHui. 2005. Modeling SystemC design in UML and automatic code generation. In ASP-DAC '05: Proceedings of the 2005 conference on Asia South Pacific design automation. ACM Press, New York, NY, USA, 932--935. Google ScholarDigital Library
Index Terms
- SamaTulyataOne: A Path Based Equivalence Checker
Recommendations
An efficient path based equivalence checking for Petri net based models of programs
ISEC '16: Proceedings of the 9th India Software Engineering ConferenceA user written program goes through significant optimizing and parallelizing transformations, both (compiler) automated and human guided, before being mapped to an architecture. Formally verifying these transformations is crucial to ensure that they ...
An efficient equivalence checking method for petri net based models of programs
ICSE '15: Proceedings of the 37th International Conference on Software Engineering - Volume 2The initial behavioural specification of any software programs goes through significant optimizing and parallelizing transformations, automated and also human guided, before being mapped to an architecture. Establishing validity of these transformations ...
Formal Verification of Optimizing Transformations during High-level Synthesis
ISEC '19: Proceedings of the 12th Innovations in Software Engineering Conference (formerly known as India Software Engineering Conference)Translation validation is the process of proving that the target code is a correct translation of the source program being compiled. In this work, we propose a translation validation method to verify code motion transformations involving loops applied ...
Comments