class Tensai::Pddl::AtomicFormula
Atomic formula in a planning domain
Public Class Methods
new(predicate, terms)
click to toggle source
Calls superclass method
# File lib/tensai/pddl/atomic_formula.rb, line 18 def initialize(predicate, terms) super predicate, terms raise ArgumentError, 'Unknown Terms' if terms.keys.any? { |k| !predicate.variables.key?(k) } predicate.variables.each do |var| self.terms[var.name] = var unless terms.key? var.name end self.terms.freeze end
Public Instance Methods
bind(values)
click to toggle source
# File lib/tensai/pddl/atomic_formula.rb, line 29 def bind(values) AtomicFormula.new(predicate, terms.merge(values)) end