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 booleandeleteTmpif "true" then the temporary folder is cleaned after each sample (it is recommended to set this to "false" to speed up sampling)private intformulaLengththe maximal length of each formula (each proposition, negation, conjunction, and disjunction counts one).private booleanformulasGeneratedWhether the formulas have already been generated.private IncreasingSubsetIterator<java.io.File>itUsed for iterating over all possible kbsprivate java.io.FilepathToTmpthe path to a folder where intermediate results (all formulas up to the required length) are storedprivate PlSignaturesignatureThe 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 voidgenerateFormulasOfLength(int length)Generates all formulas of the given length and stores them in "pathToTemp/length/"booleanhasNext()PlBeliefSetnext()
-
-
-
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.IOExceptionGenerates 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:
hasNextin interfaceBeliefSetIterator<PlFormula,PlBeliefSet>- Specified by:
hasNextin interfacejava.util.Iterator<PlBeliefSet>
-
next
public PlBeliefSet next()
- Specified by:
nextin interfaceBeliefSetIterator<PlFormula,PlBeliefSet>- Specified by:
nextin interfacejava.util.Iterator<PlBeliefSet>
-
-