equals.cc 944 Bytes
Newer Older
1
2
3
#include <iostream>
#include "ltlparse/public.hh"
#include "ltlvisit/equals.hh"
4
#include "ltlvisit/lunabbrev.hh"
5
#include "ltlvisit/tunabbrev.hh"
6
#include "ltlvisit/dump.hh"
7
8
9
10

void
syntax(char *prog)
{
11
  std::cerr << prog << " formula1 formula2" << std::endl;
12
13
14
15
16
17
18
19
20
21
22
  exit(2);
}

int
main(int argc, char **argv)
{
  if (argc != 3)
    syntax(argv[0]);

  
  spot::ltl::parse_error_list p1;
23
  spot::ltl::formula *f1 = spot::ltl::parse(argv[1], p1);
24

25
  if (spot::ltl::format_parse_errors(std::cerr, argv[1], p1))
26
27
28
    return 2;

  spot::ltl::parse_error_list p2;
29
  spot::ltl::formula *f2 = spot::ltl::parse(argv[2], p2);
30
			
31
  if (spot::ltl::format_parse_errors(std::cerr, argv[2], p2))
32
33
    return 2;

34
35
36
37
#ifdef LUNABBREV
  f1 = spot::ltl::unabbreviate_logic(f1);
  spot::ltl::dump(*f1, std::cout);
#endif
38
39
40
41
#ifdef TUNABBREV
  f1 = spot::ltl::unabbreviate_ltl(f1);
  spot::ltl::dump(*f1, std::cout);
#endif
42

43
44
45
46
47
  if (equals(f1, f2))
    return 0;
  return 1;

}