@@ -169,25 +169,19 @@ predicate summaryModel(
169169 string namespace , string type , boolean subtypes , string name , string signature , string ext ,
170170 string input , string output , string kind , string provenance
171171) {
172- summaryModel ( namespace , type , subtypes , name , signature , ext , input , output , kind , provenance , _)
173- }
174-
175- /** Holds if a summary model `row` exists for the given parameters. */
176- predicate summaryModel (
177- string namespace , string type , boolean subtypes , string name , string signature , string ext ,
178- string input , string output , string kind , string provenance , string row
179- ) {
180- summaryModel ( row ) and
181- row .splitAt ( ";" , 0 ) = namespace and
182- row .splitAt ( ";" , 1 ) = type and
183- row .splitAt ( ";" , 2 ) = subtypes .toString ( ) and
184- subtypes = [ true , false ] and
185- row .splitAt ( ";" , 3 ) = name and
186- row .splitAt ( ";" , 4 ) = signature and
187- row .splitAt ( ";" , 5 ) = ext and
188- row .splitAt ( ";" , 6 ) = input and
189- row .splitAt ( ";" , 7 ) = output and
190- row .splitAt ( ";" , 8 ) = kind and
172+ exists ( string row |
173+ summaryModel ( row ) and
174+ row .splitAt ( ";" , 0 ) = namespace and
175+ row .splitAt ( ";" , 1 ) = type and
176+ row .splitAt ( ";" , 2 ) = subtypes .toString ( ) and
177+ subtypes = [ true , false ] and
178+ row .splitAt ( ";" , 3 ) = name and
179+ row .splitAt ( ";" , 4 ) = signature and
180+ row .splitAt ( ";" , 5 ) = ext and
181+ row .splitAt ( ";" , 6 ) = input and
182+ row .splitAt ( ";" , 7 ) = output and
183+ row .splitAt ( ";" , 8 ) = kind
184+ ) and
191185 provenance = "manual"
192186}
193187
0 commit comments