Package net.sf.tweety.logics.pl.util
Class SyntacticEnumeratingIterator
- java.lang.Object
-
- net.sf.tweety.logics.pl.util.SyntacticEnumeratingIterator
-
- All Implemented Interfaces:
java.util.Iterator<PlBeliefSet>
,BeliefSetIterator<PlFormula,PlBeliefSet>
public class SyntacticEnumeratingIterator extends java.lang.Object implements BeliefSetIterator<PlFormula,PlBeliefSet>
Generates all syntactic variations of knowledge bases- Author:
- Matthias Thimm
-
-
Field Summary
Fields Modifier and Type Field Description private boolean
deleteTmp
if "true" then the temporary folder is cleaned after each sample (it is recommended to set this to "false" to speed up sampling)private int
formulaLength
the maximal length of each formula (each proposition, negation, conjunction, and disjunction counts one).private boolean
formulasGenerated
Whether the formulas have already been generated.private IncreasingSubsetIterator<java.io.File>
it
Used for iterating over all possible kbsprivate java.io.File
pathToTmp
the path to a folder where intermediate results (all formulas up to the required length) are storedprivate PlSignature
signature
The used signature.
-
Constructor Summary
Constructors Constructor Description SyntacticEnumeratingIterator(PlSignature signature, int formulaLength, java.io.File pathToTmp, boolean deleteTmp)
Creates a new sampler.
-
Method Summary
Modifier and Type Method Description private void
generateFormulasOfLength(int length)
Generates all formulas of the given length and stores them in "pathToTemp/length/"boolean
hasNext()
PlBeliefSet
next()
-
-
-
Field Detail
-
formulaLength
private int formulaLength
the maximal length of each formula (each proposition, negation, conjunction, and disjunction counts one).
-
pathToTmp
private java.io.File pathToTmp
the path to a folder where intermediate results (all formulas up to the required length) are stored
-
deleteTmp
private boolean deleteTmp
if "true" then the temporary folder is cleaned after each sample (it is recommended to set this to "false" to speed up sampling)
-
formulasGenerated
private boolean formulasGenerated
Whether the formulas have already been generated.
-
it
private IncreasingSubsetIterator<java.io.File> it
Used for iterating over all possible kbs
-
signature
private PlSignature signature
The used signature.
-
-
Constructor Detail
-
SyntacticEnumeratingIterator
public SyntacticEnumeratingIterator(PlSignature signature, int formulaLength, java.io.File pathToTmp, boolean deleteTmp)
Creates a new sampler.- Parameters:
signature
- the signature for formulas of the generated belief set.formulaLength
- the maximal length of each formula (each proposition, negation, conjunction, and disjunction counts one).pathToTmp
- the path to a folder where intermediate results (all formulas up to the required length) are storeddeleteTmp
- if "true" then the temporary folder is cleaned after each sample (it is recommended to set this to "false" to speed up sampling)
-
-
Method Detail
-
generateFormulasOfLength
private void generateFormulasOfLength(int length) throws java.io.IOException
Generates all formulas of the given length and stores them in "pathToTemp/length/"- Parameters:
length
- the length of the formula- Throws:
java.io.IOException
- if some IO issue occurs.
-
hasNext
public boolean hasNext()
- Specified by:
hasNext
in interfaceBeliefSetIterator<PlFormula,PlBeliefSet>
- Specified by:
hasNext
in interfacejava.util.Iterator<PlBeliefSet>
-
next
public PlBeliefSet next()
- Specified by:
next
in interfaceBeliefSetIterator<PlFormula,PlBeliefSet>
- Specified by:
next
in interfacejava.util.Iterator<PlBeliefSet>
-
-