class ADSL::DS::DSOneOfObjset

Public Instance Methods

prepare_action(translation) click to toggle source
# File lib/adsl/spass/spass_ds_extensions.rb, line 764
def prepare_action(translation)
  context = translation.context
  @objsets.each{ |objset| objset.prepare_action translation }
  
  @predicates = @objsets.map do |objset|
    translation.create_predicate :one_of_subset, context.level
  end
  translation.reserve_names context.p_names do |ps|
    translation.create_formula FOL::ForAll.new(ps,
      FOL::OneOf.new(@predicates.map{ |p| p[ps] })
    )
  end
end
resolve_action_objset(translation, ps, var) click to toggle source
# File lib/adsl/spass/spass_ds_extensions.rb, line 778
def resolve_action_objset(translation, ps, var)
  context = translation.context
  subformulae = []
  @objsets.length.times do |index|
    subformulae << FOL::And.new(@predicates[index][ps], @objsets[index].resolve_action_objset(translation, ps, var))
  end
  FOL::Or.new(subformulae)
end
type() click to toggle source
# File lib/adsl/ds/data_store_spec.rb, line 216
def type
  DSClass.common_supertype objsets.reject{ |o| o.type.nil? }.map{ |o| o.type }
end