Class PiecesSplitter

java.lang.Object
fr.inria.rules.integraal.util.PiecesSplitter

public class PiecesSplitter extends Object
Split a set of atoms in pieces A piece of an atom set is a set of atoms such that the atoms containing a variable v are all in the same piece and the size of the pieces is minimal for this property

You can choose if you want to include grounded atoms as their own piece or exclude them from the splitting

Author:
Guillaume Pérution-Kihli
  • Constructor Details

    • PiecesSplitter

      public PiecesSplitter()
      Default constructor

      By default, grounded atoms are included

    • PiecesSplitter

      public PiecesSplitter(boolean includeGroundedAtoms)
      Creates a splitter with configurable handling of grounded atoms.
      Parameters:
      includeGroundedAtoms - to declare if grounded atoms should be included
    • PiecesSplitter

      public PiecesSplitter(boolean includeGroundedAtoms, Collection<Variable> existentialVariables)
      Creates a splitter with configurable handling of grounded atoms and existential variables.
      Parameters:
      includeGroundedAtoms - to declare if grounded atoms should be included
      existentialVariables - pre-computed existential variables
  • Method Details

    • split

      public Collection<Collection<Atom>> split(Collection<Atom> toSplit)
      Splits the given atoms into single piece
      Parameters:
      toSplit - atoms to split into single pieces
      Returns:
      pieces of atoms