//
// Test-case for string matching with valid regex
//

.type String <: symbol

.decl inputData   (t:String)
.decl pattern   (t:String)
.decl outputData  (t:String)
.output outputData  ()

pattern("a.*").
pattern("b.*").

inputData("aaaa").
inputData("a").
inputData("abba").
inputData("bcab").
inputData("bdab").
inputData("cdab").

outputData(x) :- pattern(y), inputData(x), match(y, x).
