public class SolutionSpace
extends java.lang.Object
Constructor and Description |
---|
SolutionSpace(ARXLattice lattice,
ARXConfiguration config)
For de-serialization
|
SolutionSpace(int[] minLevels,
int[] maxLevels)
Creates a new solution space
|
Modifier and Type | Method and Description |
---|---|
protected int |
fromJHPL(int level)
Internal method that adds the offset
|
protected int[] |
fromJHPL(int[] transformation)
Internal method that adds the offsets
|
Transformation |
getBottom()
Returns the bottom transformation
|
protected java.lang.Object |
getData(long id)
Returns data
|
protected InformationLoss<?> |
getInformationLoss(long identifier)
Returns the information loss
|
int |
getLevel(int[] transformation)
Returns the level of the given transformation
|
protected InformationLoss<?> |
getLowerBound(long identifier)
Returns the lower bound
|
de.linearbits.jhpl.JHPLIterator.LongIterator |
getMaterializedTransformations()
Returns all materialized transformations
|
long[] |
getMultipliersForHighDimensionalData()
Returns the multipliers
|
int[] |
getMultipliersForLowDimensionalData()
Returns the multipliers
|
de.linearbits.jhpl.PredictiveProperty |
getPropertyAnonymous()
Returns a property
|
de.linearbits.jhpl.PredictiveProperty |
getPropertyChecked()
Returns a property
|
de.linearbits.jhpl.PredictiveProperty |
getPropertyExpanded()
Property for expanded transformation
|
de.linearbits.jhpl.PredictiveProperty |
getPropertyForceSnapshot()
Returns a property
|
de.linearbits.jhpl.PredictiveProperty |
getPropertyInsufficientUtility()
Returns a property
|
de.linearbits.jhpl.PredictiveProperty |
getPropertyKAnonymous()
Returns a property
|
de.linearbits.jhpl.PredictiveProperty |
getPropertyNotAnonymous()
Returns a property
|
de.linearbits.jhpl.PredictiveProperty |
getPropertyNotKAnonymous()
Returns a property
|
de.linearbits.jhpl.PredictiveProperty |
getPropertySuccessorsPruned()
Returns a property
|
de.linearbits.jhpl.PredictiveProperty |
getPropertyVisited()
Returns a property
|
long |
getSize()
Returns the overall number of transformations in the solution space
|
Transformation |
getTop()
Returns the top-transformation
|
Transformation |
getTransformation(int[] transformation)
Returns a wrapper object with access to all properties about the transformation
|
Transformation |
getTransformation(long identifier)
Returns the transformation with the given identifier
|
InformationLoss<?> |
getUtility(long identifier)
Returns the utility of the transformation with the given identifier
|
boolean |
hasProperty(int[] transformation,
de.linearbits.jhpl.PredictiveProperty property)
Returns whether a node has a given property
|
boolean |
isDirectParentChild(int[] parent,
int[] child)
Determines whether a direct parent-child relationship exists.
|
boolean |
isParentChildOrEqual(int[] parent,
int[] child)
Determines whether a parent-child relationship exists, or both are equal
|
void |
setAnonymityPropertyPredictable(boolean predictable)
Makes the anonymity property predictable
|
protected void |
setData(long id,
java.lang.Object object)
Sets data
|
protected void |
setInformationLoss(long identifier,
InformationLoss<?> loss)
Sets the information loss
|
protected void |
setLowerBound(long identifier,
InformationLoss<?> loss)
Sets the lower bound
|
protected int |
toJHPL(int level)
Internal method that subtracts the offset
|
protected int[] |
toJHPL(int[] transformation)
Internal method that subtracts the offsets
|
de.linearbits.jhpl.JHPLIterator.LongIterator |
unsafeGetAllTransformations()
Returns all transformations in the solution space
|
de.linearbits.jhpl.JHPLIterator.LongIterator |
unsafeGetLevel(int level)
Returns *all* nodes on the given level.
|
public SolutionSpace(ARXLattice lattice, ARXConfiguration config)
lattice
- config
- public SolutionSpace(int[] minLevels, int[] maxLevels)
minLevels
- maxLevels
- public Transformation getBottom()
public int getLevel(int[] transformation)
transformation
- public de.linearbits.jhpl.JHPLIterator.LongIterator getMaterializedTransformations()
public long[] getMultipliersForHighDimensionalData()
public int[] getMultipliersForLowDimensionalData()
public de.linearbits.jhpl.PredictiveProperty getPropertyAnonymous()
public de.linearbits.jhpl.PredictiveProperty getPropertyChecked()
public de.linearbits.jhpl.PredictiveProperty getPropertyExpanded()
public de.linearbits.jhpl.PredictiveProperty getPropertyForceSnapshot()
public de.linearbits.jhpl.PredictiveProperty getPropertyInsufficientUtility()
public de.linearbits.jhpl.PredictiveProperty getPropertyKAnonymous()
public de.linearbits.jhpl.PredictiveProperty getPropertyNotAnonymous()
public de.linearbits.jhpl.PredictiveProperty getPropertyNotKAnonymous()
public de.linearbits.jhpl.PredictiveProperty getPropertySuccessorsPruned()
public de.linearbits.jhpl.PredictiveProperty getPropertyVisited()
public long getSize()
public Transformation getTop()
public Transformation getTransformation(int[] transformation)
transformation
- public Transformation getTransformation(long identifier)
identifier
- public InformationLoss<?> getUtility(long identifier)
identifier
- public boolean hasProperty(int[] transformation, de.linearbits.jhpl.PredictiveProperty property)
transformation
- property
- public boolean isDirectParentChild(int[] parent, int[] child)
parent
- child
- public boolean isParentChildOrEqual(int[] parent, int[] child)
parent
- child
- public void setAnonymityPropertyPredictable(boolean predictable)
predictable
- public de.linearbits.jhpl.JHPLIterator.LongIterator unsafeGetAllTransformations()
public de.linearbits.jhpl.JHPLIterator.LongIterator unsafeGetLevel(int level)
level
- protected int fromJHPL(int level)
level
- protected int[] fromJHPL(int[] transformation)
transformation
- protected java.lang.Object getData(long id)
id
- protected InformationLoss<?> getInformationLoss(long identifier)
identifier
- protected InformationLoss<?> getLowerBound(long identifier)
identifier
- protected void setData(long id, java.lang.Object object)
id
- object
- protected void setInformationLoss(long identifier, InformationLoss<?> loss)
identifier
- loss
- protected void setLowerBound(long identifier, InformationLoss<?> loss)
identifier
- loss
- protected int toJHPL(int level)
level
- protected int[] toJHPL(int[] transformation)
transformation
-