Closed GoogleCodeExporter closed 9 years ago
[deleted comment]
Correction:
DataTrace must maintain a list of data records, not a map, because it must have
a separation between any 2 sets of data from 2 different executions. For
example, at a SynopticPoint p, we have 2 sets of data from 2 executions:
{x=1,y=2} and {x=2,y=3}. The relation between x and y is y=x+1. If we maintain
a map, we would have x->{1,2}, y->{2,3} and it could be interpreted as
{x=1,y=3} and {x=2,y=2}. On the other hand, if we maintain a list, we would
have [{x=1,y=2},{x=2,y=3}] and there would be no ambiguity.
SynopticPoint is not a type; it is implicitly represented in Partition.
Therefore, DataTrace, which corresponds to a SynopticPoint, should be encoded
in Partition as well. That is, each successor of a Partition maps to DataTrace.
Original comment by ssukkerd
on 31 Jan 2013 at 4:24
*** Disregard the above descriptions. There are significant changes to this
issue. ***
Mine invariants at all Synoptic points. A Synoptic point is an edge between 2
partitions in a Synoptic model. Each Synoptic point corresponds to a set of
States. We need to pass these states to Daikonizer to get a list of Daikon
invariants at that particular Synoptic point.
Create a Daikonizer wrapper class, which provides interface to add instances of
State to Daikonizer and get back a list of invariants. Create a Partition
wrapper class to store invariants at Synoptic points of each partition.
Original comment by ssukkerd
on 1 Feb 2013 at 4:21
I have no unit tests for this yet. But I think it would help if you review
Revision 144199854512 first, to make sure I'm on the right track.
Original comment by ssukkerd
on 1 Feb 2013 at 4:50
Original comment by bestchai
on 8 Feb 2013 at 4:17
Solution in revision b016db026b30, please review.
Original comment by ssukkerd
on 11 Feb 2013 at 3:42
Fixed via Issue 285 with revision ef675d4d0691
Original comment by bestchai
on 19 Feb 2013 at 7:19
Original issue reported on code.google.com by
ssukkerd
on 30 Jan 2013 at 6:59