OKlibrary  0.2.1.6
OKlib::Satisfiability::Assignments::PartialAssignments::ApplyPassAdaptor< Int, RPass, CLSAdaptor > Class Template Reference

CLSAdaptor, which applies a partial assignments, and transfers the result to another CLSAdaptor. More...

#include <Boolean.hpp>

List of all members.

Public Types

typedef Int int_type
typedef std::string string_type
typedef RPass rpass_type
typedef rpass_type::pass_type pass_type
typedef int_type literal_type
typedef CLSAdaptor cls_adaptor_t

Public Member Functions

 ApplyPassAdaptor (const rpass_type &rpa, cls_adaptor_t &ad)
void comment (const string_type &com)
void n (const int_type nvar)
void c (const int_type nclauses)
void finish ()
void tautological_clause (int_type)
template<class ForwardRange >
void clause (const ForwardRange &clause, const int_type)
int_type new_c () const
int_type new_n () const

Public Attributes

const rpass_typerpa
cls_adaptor_tad

Detailed Description

template<typename Int, class RPass, class CLSAdaptor>
class OKlib::Satisfiability::Assignments::PartialAssignments::ApplyPassAdaptor< Int, RPass, CLSAdaptor >

CLSAdaptor, which applies a partial assignments, and transfers the result to another CLSAdaptor.

  • Inserts a comment showing the partial assignment directly before the parameter line.
  • Keeps the parameter values as given.
  • Maintains also the variables (i.e., no renaming), the order of clauses and the order of literals.
  • Via the member function new_c() one gets the current number of clauses (clauses transferred minus clauses satisfied).
  • And via new_n() one gets the current maximal variable index (which occurs in the result of the application).
  • Construction with an object as produced by InputOutput::ReadPass, and the adaptor-object for transfer.

Definition at line 115 of file Boolean.hpp.


Member Typedef Documentation

template<typename Int , class RPass , class CLSAdaptor >
typedef CLSAdaptor OKlib::Satisfiability::Assignments::PartialAssignments::ApplyPassAdaptor< Int, RPass, CLSAdaptor >::cls_adaptor_t

Definition at line 123 of file Boolean.hpp.

template<typename Int , class RPass , class CLSAdaptor >
typedef Int OKlib::Satisfiability::Assignments::PartialAssignments::ApplyPassAdaptor< Int, RPass, CLSAdaptor >::int_type

Definition at line 117 of file Boolean.hpp.

template<typename Int , class RPass , class CLSAdaptor >
typedef int_type OKlib::Satisfiability::Assignments::PartialAssignments::ApplyPassAdaptor< Int, RPass, CLSAdaptor >::literal_type

Definition at line 122 of file Boolean.hpp.

template<typename Int , class RPass , class CLSAdaptor >
typedef rpass_type::pass_type OKlib::Satisfiability::Assignments::PartialAssignments::ApplyPassAdaptor< Int, RPass, CLSAdaptor >::pass_type

Definition at line 121 of file Boolean.hpp.

template<typename Int , class RPass , class CLSAdaptor >
typedef RPass OKlib::Satisfiability::Assignments::PartialAssignments::ApplyPassAdaptor< Int, RPass, CLSAdaptor >::rpass_type

Definition at line 120 of file Boolean.hpp.

template<typename Int , class RPass , class CLSAdaptor >
typedef std::string OKlib::Satisfiability::Assignments::PartialAssignments::ApplyPassAdaptor< Int, RPass, CLSAdaptor >::string_type

Definition at line 118 of file Boolean.hpp.


Constructor & Destructor Documentation

template<typename Int , class RPass , class CLSAdaptor >
OKlib::Satisfiability::Assignments::PartialAssignments::ApplyPassAdaptor< Int, RPass, CLSAdaptor >::ApplyPassAdaptor ( const rpass_type rpa,
cls_adaptor_t ad 
) [inline]

Definition at line 128 of file Boolean.hpp.


Member Function Documentation

template<typename Int , class RPass , class CLSAdaptor >
void OKlib::Satisfiability::Assignments::PartialAssignments::ApplyPassAdaptor< Int, RPass, CLSAdaptor >::c ( const int_type  nclauses) [inline]

Definition at line 139 of file Boolean.hpp.

template<typename Int , class RPass , class CLSAdaptor >
template<class ForwardRange >
void OKlib::Satisfiability::Assignments::PartialAssignments::ApplyPassAdaptor< Int, RPass, CLSAdaptor >::clause ( const ForwardRange &  clause,
const int_type   
) [inline]
template<typename Int , class RPass , class CLSAdaptor >
void OKlib::Satisfiability::Assignments::PartialAssignments::ApplyPassAdaptor< Int, RPass, CLSAdaptor >::comment ( const string_type com) [inline]

Definition at line 130 of file Boolean.hpp.

template<typename Int , class RPass , class CLSAdaptor >
void OKlib::Satisfiability::Assignments::PartialAssignments::ApplyPassAdaptor< Int, RPass, CLSAdaptor >::finish ( ) [inline]

Definition at line 140 of file Boolean.hpp.

template<typename Int , class RPass , class CLSAdaptor >
void OKlib::Satisfiability::Assignments::PartialAssignments::ApplyPassAdaptor< Int, RPass, CLSAdaptor >::n ( const int_type  nvar) [inline]

Definition at line 131 of file Boolean.hpp.

References StreamHandling::copy().

template<typename Int , class RPass , class CLSAdaptor >
int_type OKlib::Satisfiability::Assignments::PartialAssignments::ApplyPassAdaptor< Int, RPass, CLSAdaptor >::new_c ( ) const [inline]

Definition at line 165 of file Boolean.hpp.

template<typename Int , class RPass , class CLSAdaptor >
int_type OKlib::Satisfiability::Assignments::PartialAssignments::ApplyPassAdaptor< Int, RPass, CLSAdaptor >::new_n ( ) const [inline]

Definition at line 166 of file Boolean.hpp.

template<typename Int , class RPass , class CLSAdaptor >
void OKlib::Satisfiability::Assignments::PartialAssignments::ApplyPassAdaptor< Int, RPass, CLSAdaptor >::tautological_clause ( int_type  ) [inline]

Definition at line 141 of file Boolean.hpp.


Member Data Documentation

template<typename Int , class RPass , class CLSAdaptor >
cls_adaptor_t& OKlib::Satisfiability::Assignments::PartialAssignments::ApplyPassAdaptor< Int, RPass, CLSAdaptor >::ad

Definition at line 126 of file Boolean.hpp.

template<typename Int , class RPass , class CLSAdaptor >
const rpass_type& OKlib::Satisfiability::Assignments::PartialAssignments::ApplyPassAdaptor< Int, RPass, CLSAdaptor >::rpa

Definition at line 125 of file Boolean.hpp.


The documentation for this class was generated from the following file: