Przepisywanie terminów; Oblicz pary krytyczne

10

Próbowałem rozwiązać następujące ćwiczenie, ale utknąłem podczas próby znalezienia wszystkich krytycznych par .

Mam następujące pytania:

  1. Skąd mam wiedzieć, która para krytyczna stworzyła nową regułę?
  2. Skąd mam wiedzieć, że znalazłem wszystkie krytyczne pary?

Niech gdzie jest binarny, jest jednoargumentowy, a jest stałą. Σ={,ja,mi}jami

mi={(xy)zx(yz)xmixxja(x)mi}

Moja dotychczasowa praca:

  1. xmi>lpox   (LPO 1)   jest zmienną   (LPO 2b) po prawej stronie nie ma żadnych terminów strona strony     (LPO 2c)x

    xja(x)>lpomi

    (xy)zx(yz)

    s=((x,y)s1,zs2))t=(xt1,(y,z)t2))

    • sprawdź, czy ,     (LPO 1), aby udowodnić, że (LPO 2c) that j = ¯ 1 , m s > lpo t 1 s > lpo t 2 s > lpo ys>tjotjot=1,m¯

      s>lpot1

      s>lpot2)
      s>lpoy(LPO 1);s>lpoz(LPO 1);(x,y)>y(LPO 1)
    • znajdź taki, żes i > lpo t i i = 1 ( x , y ) > lpo xjasja>lpotja     ja=1
      (x,y)>lpox(LPO 1)

    (xy)z>lpox(yz)

  2. za. B. c. x 1e(xy)zx(yz)

    x yx1mix1

    θ { xxy=?x1mi

    ( x 1e ) zθ{xx1;ymi} ( x y ) z

    (x1mi)zx1zx1(miz)mizzpozostawiona tożsamość?

    e x 1(xy)zx(yz)

    x yex1x1

    θ { xxy=?ex1

    ( e x 1 ) zθ{xe;yx1}
    (ex1)zx1ze(x1z)?

    x 1(xy)zx(yz)

    x1i(x1)e

    xy=?x1i(x1)

    (θ{xx1;yi(x1)}
    (x1i(x1))zezx1(i(x1)z)?

Jako dokument pomocniczy mam „Przepisywanie terminów i wszystko inne” autorstwa Franza Baadera i Tobiasa Nipkowa.

( oryginalny obraz tutaj )

EDYCJA 1

Po wyszukaniu par krytycznych mam następujący zestaw reguł (przy założeniu, że 2.a jest corect):

E={(xy)zx(yz)xmixxja(x)mix(ja(x)y)yx(yja(xy))mimixxmi(xy)xy}
Alexandru Cimpanu
źródło
@MartinSleziak Miałem na myśli, że dokumentem, którego używam do rozwiązania problemu, jest Przepisywanie terminów i wszystko inne "autorstwa Franza Baadera i Tobiasa Nipkowa. I że stamtąd są pojęcia i styl notacji.
Alexandru Cimpanu
1
Nie jestem pewien, czy to ci w jakikolwiek sposób pomoże, ale poszukiwanie „par krytycznych”, „przepisywania terminów”, „aksjomatów grupowych” prowadzi do niektórych slajdów, które mówią o krytycznych punktach twojego systemu. (Lub przynajmniej bardzo podobny system). Zobacz tutaj lub tutaj .
Martin
@MartinSleziak, rzuciłem okiem na slajdy, w tym momencie mogą się przydać, byłem królem zmagania się z książką. Obecnie próbuję kilka pomysłów. Dziękuję za pomoc
Alexandru Cimpanu,

Odpowiedzi:

5

Zanim odniosę się do rzeczywistych pytań, jedna uwaga na temat dotychczasowej pracy: lewe anulowanie w 2.a. ogólnie nie jest poprawny, krytyczna para to po prostu . W związku z tym nie dostajesz pary krytycznej 2.b. Problem z tym anulowaniem polega na tym, że otrzymane równanie zasadniczo nie wynika z aksjomatów, od których zacząłeś; na przykład, jeśli pracujesz w języku pierścieni, możesz w pewnym momencie wyprowadzić parę krytyczną , ale błędne byłoby wydedukowanie (co oznaczałoby, że masz tylko model trywialny). Żadna procedura przepisywania dźwięku, w tym Hueta, nie powinna pozwolić na tę redukcję.0 x 0 y x yx(miz)xz0x0yxy

Z drugiej strony brakuje kluczowych par, które uzyskuje się przez ujednolicenie (wersje o zmienionych nazwach) lub ze wszystkimi (tj. Za pomocą second ). Wynikowe pary krytyczne tox i ( x ) ( x y ) z xmixja(x)(xy)z

  • x(ymi)(xy)mixy , który po zmniejszeniu staje się trywialnym równaniem , ixyxy
  • x(yja(xy))(xy)ja(xy)mi , którego nie można dalej zmniejszyć i daje regułę (przy założeniu, że w priorytecie służyło do definiowania LPO, tak jak to robiłeś podczas orientacji ).x(yja(xy))mimixja(x)mi

W przypadku podstawowej procedury wypełniania:

  1. Za każdym razem, gdy tworzysz parę krytyczną, redukujesz obie strony tak daleko, jak to możliwe, korzystając z obecnego zestawu reguł. Jeśli wynikowe normalne formularze nie są równe, tworzysz nową regułę. Na przykład twój 2.c. daje nową regułę . Z drugiej strony unifikacja pomocą daje parę krytyczną , które można sprowadzić do trywialnego i odrzucone.( x y ) x(ja(x)z)miz(xy)zx1y1(xy)(zz1)((xy)z)z1(x(yz))z1x(y(zz1))x(y(zz1))
  2. Za każdym razem, gdy tworzysz nową regułę , musisz wziąć pod uwagę wszystkie krytyczne pary między nią a istniejącymi regułami , sprawdzając unifikowalność z każdym niezmiennym podtermem i nawzajem. Pamiętaj również, aby sprawdzić, czy nakładają się na siebie, tj. Unifikowalność z własnymi subtermami, tak jak zrobiliśmy powyżej dla asocjatywności. Zatrzymujesz się tylko wtedy, gdy wszystkie krytyczne pary istniejących reguł zostały zbadane i albo stworzyły nowe reguły lub zostały odrzucone.lrl1r1,,lnrnlljal

Procedurę tę można nieco poprawić. W szczególności możesz użyć nowych reguł, aby uprościć stare (i być może odrzucić je, jeśli staną się trywialne, co oznacza, że ​​nowa zasada je obejmuje), a dobra heurystyka wyboru następnej pary krytycznej do zbadania może drastycznie ograniczyć ilość zasad.

Klaus Draeger
źródło
Czy możemy wprowadzić uproszczenia, takie jak 2.a, mówiąc o procedurze ukończenia Huet?
Alexandru Cimpanu
Jak ujednolicić x∘e lub x∘i (x) ze wszystkimi (x∘y) ∘z (tj. Używając drugiego ∘) ?
Alexandru Cimpanu
Jeśli chodzi o to uproszczenie, w 2.a, zostało to zrobione w klasie, więc musi mieć za sobą logikę.
Alexandru Cimpanu
Czy traktowałeś może układy równań warunkowych, a twoje aksjomaty obejmowały lewą anulowalność ( )? To jest krok, który robisz w 2.a, a jeśli jest to uzasadnione aksjomatem, możesz. Nawet to byłby skrót - ściśle mówiąc, najpierw wyprowadzilibyśmy równanie nieredukowane, a następnie uzyskaliśmy je za pomocą równania warunkowego, a następnie pozbyliście się nieredukowanego (ponieważ jest ono uwzględnione). xy=xzy=z
Klaus Draeger,
Nie wiem Myślałem, że ma to związek z procedurą zaawansowanego ukończenia (z którą nie jestem zaznajomiony). Załóżmy, że 2.a jest poprawne, zredagowałem swoje pytanie, aby opublikować nowe reguły, które uzyskałem.
Alexandru Cimpanu