Ejemplo n.º 1
0
void goal::copy_to(goal & target) const {
    SASSERT(&m_manager == &(target.m_manager));
    if (this == &target)
        return;

    m().copy(m_forms, target.m_forms);
    m().copy(m_proofs, target.m_proofs);
    m().copy(m_dependencies, target.m_dependencies);

    target.m_depth                = std::max(m_depth, target.m_depth);
    SASSERT(target.m_proofs_enabled == m_proofs_enabled);
    SASSERT(target.m_core_enabled   == m_core_enabled);
    target.m_inconsistent         = m_inconsistent;
    target.m_precision            = mk_union(prec(), target.prec());
}
Ejemplo n.º 2
0
int main(){

   struct bitset *mybitset,* myotherbitset;
   /*Checking
   mybitset = bitset_new(17); //Make pointer from int without cast. What?
   myotherbitset = bitset_new(8);
   bitset_add(mybitset,2);
   bitset_add(mybitset,1);
   bitset_add(myotherbitset,4);
   printf("%d   %d\n",mybitset->bits[0],bitset_lookup(mybitset,2));
   printf("%d   %d\n",mybitset->bits[0],bitset_lookup(mybitset,3));
   struct bitset *setunion;
   setunion = mk_union(mybitset, myotherbitset);
   print_set(mybitset);
   print_set(myotherbitset);
   print_set(setunion);
   //End checking*/

   /*This block creates two sets and reads in two strings
     It the puts the strings in the set */
   struct bitset *one,*two;
   char input1[MAX],input2[MAX];
   printf("First sentace plox: \n");
   fgets(input1,MAX,stdin);
   one = parse_string(input1);
   printf("Second sentance plox\n");
   fgets(input2,MAX,stdin);
   two = parse_string(input2);
   
   printf("Line 1\n\n");
   print_set(one);
   printf("Line 2\n\n");
   print_set(two);

   struct bitset * setunion;
   setunion = mk_union(one,two);
   printf("\nUnion:\n");
   print_set(setunion);

   struct bitset * intersection;
   intersection = intersect(one,two); 
   printf("\nIntersetion:\n");
   print_set(intersection);
   
   
   return 0;
    
}