Skip to content
/ CathTA Public

Efficient Manipulation with Tree Automata designed by Cathiec

Notifications You must be signed in to change notification settings

cathiec/CathTA

Repository files navigation

TA Version 1.1

C++ library for efficient manipulation with Tree Automata - Created by Xiao XU

For any question, please contact xiao.xu.cathiec@gmail.com.

Creation of Tree Automata

Create a tree automaton according to a file

  • Example: create a tree automaton "A0" by reading the definition in a texte file "A0.txt":
    tree_automaton A0("A0.txt");

Create a union tree automaton of 2 tree automata

  • Example: create a union tree automaton "A0UA1" of 2 automata "A0" and "A1":
    tree_automaton A0UA1 = A0.U(A1);

Create an intersection tree automaton of 2 tree automata

  • Example: create an intersection tree automaton "A0IA1" of 2 automata "A0" and "A1":
    tree_automaton A0IA1 = A0.I(A1);

Language Inclusion of Tree Automata

Check if the language of a tree automaton is included in the language of another tree automaton

  • Example: check if the language of tree automaton "A0" is included in the language of tree automaton "A1":
    if(A0.is_included_in(A1))
          cout << "Included" << endl;
      else
          cout << "Not included" << endl;

Check if the language of a tree automaton is included in the language of another tree automaton with restriction of maximum tree dimension

  • Example: check if the language of tree automaton "A0" is included in the language of tree automaton "A1" with restriction of maximum 5 tree dimension:
    if(A0.is_included_in(A1, 5))
          cout << "Included" << endl;
      else
          cout << "Not included" << endl;

Maximum Dimension of Tree Automata

Calculate the maximum dimension of a tree automaton

  • Example: calculate the maximum dimension of a tree automaton "A0":
    cout << A0.upper_bound_dimension() << endl;

About

Efficient Manipulation with Tree Automata designed by Cathiec

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published