Main Page | Modules | Alphabetical List | Compound List | File List | Compound Members | Related Pages

testBackTrack.cpp

00001 #include <fstream>
00002 #include <iostream>
00003 #include <iterator>
00004 #include <list>
00005 #include <vector>
00006 
00007 #include "stats.hpp"
00008 tm_stats g_counter, c_counter;
00009 
00010 #include "infinite_tape.hpp"
00011 #include "long_int.hpp"
00012 #include "state.hpp"
00013 #include "turing_machine.hpp"
00014 #include "non_halt_detection.hpp"
00015 #include "non_halt_data_structures.hpp"
00016 #include "machine_storage.hpp"
00017 #include "watch.hpp"
00018 
00019 int main()
00020 {
00021         turing_machine<unsigned short> machine(5,0);
00022 
00023         machine.set_halt_state(4);
00024 
00025         machine.add_write_transition(0,0,1,0);
00026         machine.add_move_transition(0,1, turing_machine<unsigned short>::right, 1);
00027         machine.add_move_transition(1,0, turing_machine<unsigned short>::left, 2);
00028         machine.add_move_transition(1,1, turing_machine<unsigned short>::right, 3);
00029         machine.add_move_transition(2,1, turing_machine<unsigned short>::left, 3);
00030         machine.add_write_transition(3,0,1,0);
00031         machine.add_write_transition(3,1,0,1);
00032 
00033         if(christmasTree(machine, 500))
00034                 std::cout << "yes" << std::endl;
00035 
00036         turing_machine<unsigned short> machine2(5,0);
00037 
00038         machine2.set_halt_state(4);
00039 
00040         machine2.add_write_transition(0,0,1,1);
00041         machine2.add_move_transition(0,1, turing_machine<unsigned short>::left, 2);
00042         machine2.add_write_transition(1,0,1,0);
00043         machine2.add_move_transition(1,1, turing_machine<unsigned short>::right, 1);
00044         machine2.add_write_transition(2,0,1,1);
00045         machine2.add_move_transition(2,1, turing_machine<unsigned short>::left, 3);
00046         machine2.add_move_transition(3,0, turing_machine<unsigned short>::left, 1);
00047 
00048         if(christmasTree(machine2, 500))
00049                 std::cout << "yes" << std::endl;
00050 
00051         return 0;
00052 }

Generated on Thu Nov 20 00:17:32 2003 for BusyBeaver by doxygen 1.3.3