Guest User

Untitled

a guest
May 24th, 2018
92
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.02 KB | None | 0 0
  1. Compiling:
  2. make
  3.  
  4. Launching:
  5. ./main
  6.  
  7. Commands:
  8.  
  9. - print { term list } [ signature ]
  10. Prints all the terms contained in the term list
  11. Example:
  12. print { f(x,y) ; g(z,f(x,z),z) } [ f(2),g(3),z(0) ]
  13.  
  14.  
  15.  
  16.  
  17. - match { (pattern = candidate) list } [ signature ]
  18. Finds a substitution such that every cadidate matches its associated pattern
  19. Example:
  20. match { c(x,e) = c(e,x) ; c(y,y) = c(c(x,x),c(x,x)) } [ c(2) ]
  21.  
  22.  
  23.  
  24.  
  25. - unify { equation list } [signature]
  26. Return a mgu for the given equation list
  27. Example:
  28. unify { a(x) = a(a(z)) ; c (x, z) = c (x, y) } [ a(1),c(2) ]
  29.  
  30.  
  31.  
  32.  
  33. - testunify n
  34. Launch the exponential unify test with depth n
  35. Example:
  36. testunify 5
  37.  
  38.  
  39.  
  40.  
  41. - rpo { rule list } [ signature ]
  42. Tries to find a RPO for the rule list
  43. Example:
  44. rpo { a(s(x)) -> s(b(x)) ; b(s(x)) -> s(a(x)) } [ a(1),s(1),b(1) ]
  45.  
  46.  
  47.  
  48.  
  49. - criticalpairs { rule list } [ signature ]
  50. Return the criticals pairs of the rule list
  51. Example:
  52. criticalpairs { f(x,g(y,z)) -> g(f(x,y),f(x,z)) ; g(g(x,y),z) -> g(x,g(y,z)) } [ f(2),g(2) ]
  53.  
  54.  
  55.  
  56.  
  57. - normal { term } { rule list } [ signature ]
  58. Returns the normals forms of a term given terminating system rules
  59. Example:
  60. normal { f(x,e) } { f(x,f(y,z)) -> f(f(x,y),z) ; f(e,x) -> x ; f(i(x), x) -> x } [ e(0),f(2),i(1) ]
  61.  
  62.  
  63.  
  64.  
  65. - confluence { rule list } [ signature ]
  66. Checks if the term rewriting system described by the rule list is confluent
  67. Example:
  68. confluence { c(x,c(y,z)) -> c(c(x,y),z) ; c(x,ee) -> x ; c(ee,x) -> x } [ c(2), ee(0)]
  69.  
  70.  
  71.  
  72.  
  73. - findtrs { rule list } [ signature ]
  74. Tries to complete the rule list to make it a terminating and confluent term TRS
  75. Example:
  76. findtrs { f(f(x,y), f(y,z)) = y } [ f(2) ]
  77. WARNING: this method might not terminate
  78. Example:
  79. findtrs { *(*(a,b),c) = *(a,*(b,c)) ; *(e,x) = x ; *(i(x),x) = e ; *(y,x) = *(x,y) } [ *(2),e(0),i(1) ]
Add Comment
Please, Sign In to add comment