Chase Graph File Creation
A Json file containing information about nodes proved during the chase procedure can be written in the folder specified in
vada.properties
by the property
saveChaseFileLocation
@saveChaseGraph
This annotation works with all kind of Vadalog programs. The file that is generated contains a Json Array in which each object is associated to a node of the chase graph.
@saveChaseGraph.
There are two more properties (in vada.properties file) that can change the annotation’s behaviour
batchCacheEntryListSize
progressiveSavingChaseFile
The former specifies the size of the batch of cache entries to be written at the same time in the file and the latter specifies if the same file must be overwritten at every program execution (if false) or if a new different file is written, without deleting the previously generated, every time a program is executed (if true).
@saveChaseGraph.
a(2,2).
a(5,9).
b(Y,X):-a(X,Y).
@output("b").
The file has the following structure:
{name: a(1,2), pattern: a(1,1), provenance: "", rule: null},
{name: b(2,1), pattern: b(1,2), provenance: "a(1,2)", rule: b(Y,X):-a(X,Y)},
{name: a(5,9), pattern: a(1,2), provenance: "", rule: null},
{name: b(9,5), pattern: b(1,2), provenance: "a(5,9)", rule: b(Y,X):-a(X,Y)}
We can see that input nodes have always empty provenance and no rule. |