This class represents a reduction that replaces symbolic parameters with their constraint values.

# S4 method for class 'Chain'
as.character(x)

# S4 method for class 'Chain,Problem'
accepts(object, problem)

# S4 method for class 'Chain,Problem'
perform(object, problem)

# S4 method for class 'Chain,SolutionORList,list'
invert(object, solution, inverse_data)

Arguments

x, object

A Chain object.

problem

A Problem object to check.

solution

A Solution or list.

inverse_data

A list that contains the data encoding the original problem.

Methods (by generic)

  • accepts(object = Chain, problem = Problem): A problem is accepted if the sequence of reductions is valid. In particular, the i-th reduction must accept the output of the i-1th reduction, with the first reduction (self.reductions[0]) in the sequence taking as input the supplied problem.

  • perform(object = Chain, problem = Problem): Applies the chain to a problem and returns an equivalent problem.

  • invert(object = Chain, solution = SolutionORList, inverse_data = list): Performs the reduction on a problem and returns an equivalent problem.