Project

CS1-CS2

Goal: CS1 and CS2 stand for the first and second computing courses in a typical four-year computing curriculum. These are usually the “Introduction to Programming” and “Data Structures and Algorithms” courses in India. We are exploring ways of improving how students learn in these courses.

Updates
0 new
0
Recommendations
0 new
0
Followers
0 new
1
Reads
1 new
128

Project log

Soumyadip Bandyopadhyay
added 2 research items
An application program can go through significant optimizing and parallelizing transformations, both automated and human guided, before being mapped to an architecture. Formal verification of these transformations is crucial to ensure that they preserve the original behavioural specification. PRES+ model (Petri net based Representation of Embedded Systems) encompassing data processing is used to model parallel behaviours more vividly. This paper presents a translation validation tool for verifying optimizing and parallelizing code transformations by checking equivalence between two PRES+ models, one representing the source code and the other representing its optimized and (or) parallelized version.
Translation validation is the process of proving semantic equivalence between source and source-translation, i.e., checking the semantic equivalence between the target code (which is a translation of the source program being compiled) and the source code. In this paper, we propose a translation validation technique for Petri net based models of programs which verify several code optimizing transformations involving loop. These types of transformation have been used in several application domains such as scheduling phase of High level synthesis, high performance computations etc. Our Petri net based equivalence checker checks the computational equivalence between two one-safe colour Petri nets. In this work, we have taken two versions of CPNs one corresponds to the source program and the other, the target programs. Using path based analysis technique, we have developed a sound method for proving several code optimizing transformations involving loop. We have also compared our results with other Petri net based equivalence checkers.The experimental result shows the efficacy of the method.
Swaroop Joshi
added a project goal
CS1 and CS2 stand for the first and second computing courses in a typical four-year computing curriculum. These are usually the “Introduction to Programming” and “Data Structures and Algorithms” courses in India. We are exploring ways of improving how students learn in these courses.