Lazy grounding and groundwithbounds
To make lazy grounding work with groundwithbounds, we want the information of the propagaion to be used when creating generators. I did this in commit [[https://bitbucket.org/broesdecat/idp/changeset/467241565bdc39e5b89ea20b7361a6ec2f44dc01|467241565bdc39e5b89ea20b7361a6ec2f44dc01]]
Since the propagationinfo is now passed to the generators but NOT given to the structure, we can get a situation where some sentences are not grounded, but the information that allows to do that is not in the structure.
We should think about how this can be fixed since running over the entire structure to do LUP might be too expensive.
I believe the solution will be in lazily running over the structure: every time we ground an atom, we first check if
it satisfies the ct or the cf bdd in the symbolic structure.
Comments (4)
-
reporter -
reporter Additional remark: if we do it this way, it should be GUARANTEED that we will not try to find "alltwovaluedextensions" unless the output-voc is the entire vocabulary!
-
reporter Added outputvocabulary to the createBounds
see issue 226 This was needed because in some cases we want to use groundwithbounds WITHOUT having to run over the entire structure with LUP THUS, we will only run over the outputvoc, the vocabulary that we are really interested in. Depending on the outputvoc, the options LUP and GWB, we can than decide wether or not we want to replace our atoms by their BDDs in the Symbolicstructure-evaluation
→ Wiki macro error: Changeset 32f57670ead9 not found.
-
- changed status to resolved
- Log in to comment
I've checked a bit more details. Actually, there are two problems:
This being said, I will try to fix it ;-)