Riscrittura dei termini; Calcola coppie critiche


10

Ho provato a risolvere il seguente esercizio ma mi sono bloccato mentre cercavo di trovare tutte le coppie critiche .

Ho le seguenti domande:

  1. Come faccio a sapere quale coppia critica ha prodotto una nuova regola?
  2. Come faccio a sapere di aver trovato tutte le coppie critiche?

Sia dove è binario, sono unario ed è una costante. Σ={,i,e}ie

E={(xy)zx(yz)xexxi(x)e}

Il mio lavoro finora:

  1. xe>lpox   (LPO 1)   è una variabile   (LPO 2b) non ci sono termini a destra lato mano     (LPO 2c)x

    xi(x)>lpoe

    (xy)zx(yz)

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

    • controlla che ,     (LPO 1) per dimostrare che (LPO 2c) che dimostriamo che s>tjj=1,m¯

      s>lpot1

      s>lpot2
      s>lpoy(LPO 1);s>lpoz(LPO 1);(x,y)>y(LPO 1)
    • trovare modo tale cheisi>lpoti     i=1
      (x,y)>lpox(LPO 1)

    (xy)z>lpox(yz)

  2. un. B. c. (xy)zx(yz)

    x1ex1

    xy=?x1e

    θ{xx1;ye}

    (x1e)zx1zx1(ez)ezzleft identity?

    (xy)zx(yz)

    ex1x1

    xy=?ex1

    θ{xe;yx1}
    (ex1)zx1ze(x1z)?

    (xy)zx(yz)

    x1i(x1)e

    xy=?x1i(x1)

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

Come documento di supporto ho "Term Rewriting and All That" di Franz Baader e Tobias Nipkow.

( immagine originale qui )

EDIT1

Dopo aver cercato le coppie critiche ho il seguente set di regole (supponendo che 2.a sia corretto):

E={(xy)zx(yz)xexxi(x)ex(i(x)y)yx(yi(xy))eexxe(xy)xy}

@MartinSleziak Intendevo dire che il documento che sto usando per risolvere il problema è Term Rewriting and All That "di Franz Baader e Tobias Nipkow. E che lo stile delle nozioni e delle notazioni proviene da lì.
Alexandru Cimpanu

1
Non sono sicuro che questo ti aiuterà in alcun modo, ma la ricerca di "coppie critiche", il termine di riscrittura degli "assiomi di gruppo" porta ad alcune diapositive che parlano dei punti critici del tuo sistema. (O almeno un sistema molto simile). Vedi qui o qui .
Martin,

@MartinSleziak, ho dato un'occhiata alle diapositive, potrebbero essere utili a questo punto, ero il re delle lotte con il libro. Attualmente sto provando alcune idee. Grazie per l'aiuto.
Alexandru Cimpanu,

Risposte:


5

Prima di affrontare le domande attuali, un'osservazione sul tuo lavoro finora: la cancellazione a sinistra in 2.a. non è corretto in generale, la coppia critica sarebbe solo . Di conseguenza, non ottieni la coppia critica 2.b. Il problema con questa cancellazione è che l'equazione che ottieni in generale non segue dagli assiomi da cui sei partito; ad esempio, se stai lavorando nella lingua degli anelli, potresti a un certo punto derivare la coppia critica , ma sarebbe errato dedurre (il che significherebbe che hai solo un modello banale). Nessuna procedura di riscrittura del suono, inclusa quella di Huet, dovrebbe consentire questa riduzione.x(ez)xz0x0yxy

D'altra parte, ti mancano le coppie critiche che ottieni unificando (versioni a nome variabile di) o con tutto (cioè usando il secondo ). Le coppie critiche risultanti sonoxexi(x)(xy)z

  • x(ye)(xy)exy , che dopo la riduzione diventa la banale equazione , exyxy
  • x(yi(xy))(xy)i(xy)e , che non può essere ulteriormente ridotto e dà la regola (supponendo che in precedenza utilizzato per definire l'LPO, proprio come hai fatto per orientare ).x(yi(xy))eexi(x)e

Per la procedura di completamento di base:

  1. Ogni volta che crei una coppia critica, riduci il più possibile entrambe le parti usando l'attuale set di regole. Se i moduli normali risultanti non sono uguali, si crea una nuova regola. Ad esempio, il tuo 2.c. fornisce una nuova regola . D'altra parte, unificando con ottiene la coppia critica , che può essere ridotto al banale e scartato.x(i(x)z)ez(xy)zx1y1(xy)(zz1)((xy)z)z1(x(yz))z1x(y(zz1))x(y(zz1))
  2. Ogni volta che crei una nuova regola da , devi prendere in considerazione tutte le coppie critiche tra essa e le regole esistenti da , verificando l'unificabilità di con ciascun sotterma non variabile di e vice versa. Ricorda anche di verificare se si sovrappongono da sole, cioè l'unificabilità di con i suoi sottotitoli, come abbiamo fatto sopra per associatività. Ti fermi solo quando tutte le coppie critiche delle regole esistenti sono state esaminate e hanno prodotto nuove regole o sono state scartate.lrl1r1,,lnrnllil

Questa procedura può essere migliorata un po '. In particolare, puoi usare nuove regole per semplificare quelle vecchie (e possibilmente scartarle se diventano banali, nel senso che sono riassunte dalla nuova regola), e una buona euristica per scegliere la prossima coppia critica da esaminare può ridurre drasticamente il quantità di regole.


Possiamo fare semplificazioni come la 2.a quando parliamo della procedura di completamento di Huet?
Alexandru Cimpanu,

Come si uniscono x∘e o x∘i (x) con tutti (x∘y) ∘z (cioè usando il secondo ∘) ?
Alexandru Cimpanu,

Riguardo a questa semplificazione, al punto 2.a, è stato fatto in classe, quindi deve avere qualche logica dietro.
Alexandru Cimpanu,

Stavi forse trattando i sistemi di equazioni condizionali e i tuoi assiomi includevano la cancellabilità a sinistra ( )? Questo è il passo che fai in 2.a, e se giustificato da un assioma, puoi farlo. Tuttavia, anche questa sarebbe una scorciatoia - a rigor di termini, prima deriveresti l'equazione non ridotta, quindi otterrai quella ridotta tramite l'equazione condizionale, e poi ti libererai di quella non ridotta (perché è riassunta). xy=xzy=z
Klaus Draeger,

Non lo so. Ho pensato che avesse a che fare con la procedura avanzata di completamento (con cui non ho familiarità). Supponiamo che 2.a sia corretto, ho modificato la mia domanda per pubblicare le nuove regole che ho ottenuto.
Alexandru Cimpanu,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.