Pages: [1]   Go Down
Print
Author Topic: Esercizio Lamba calcolo 46  (Read 386 times)
0 Members e 1 Utente non registrato stanno visualizzando questa discussione.
Dott.V
Matricola
*
Offline Offline

Posts: 35


« on: 13-06-2017, 20:35:13 »

Buonasera.
Ho provato a portare in forma normale il seguente lambda-termine ottenendo un risultato diverso da quello che potrebbe fornire un lambda-calculator like this http://www.cburch.com/lambda/index.html .

Testo:

((λw.(xw))(λy.(yx)))[λx.(w(xy))/x]

MIO svolgimento:

((λw.(xw))(λy.(yx)))
x(λy.(yx)){a/y}
x(λa.(ax))[λx.(w(xy))/x]
(λx.wxy)(λa.a(λx.wxy))
w(λa.a(λx.wxy))y
w(λa.a(wyy))
wwyy

Risultato del Lambda Calculator
wxy


Cosa sbaglio?
« Last Edit: 13-06-2017, 20:38:23 by Dott.V » Logged
Franco Barbanera
Moderator
Forumista Eroico
*****
Offline Offline

Posts: 2.622



WWW
« Reply #1 on: 14-06-2017, 10:20:51 »

C'e' un errore nel passaggio da

x(λa.(ax))[λx.(w(xy))/x]

a

(λx.wxy)(λa.a(λx.wxy))

Scrivere w(xy)  e wxy  NON e' la stessa cosa!

FB
Logged
Dott.V
Matricola
*
Offline Offline

Posts: 35


« Reply #2 on: 14-06-2017, 15:58:40 »

E allora non avevo ben capito come funzionasse lo scope dei lambda-termini. Propongo allora la seguente soluzione:

((λw.(xw))(λy.(yx)))
x(λy.(yx)){a/y}
x(λa.(ax))[λx.(w(xy))/x]
(λx.(w(xy)))(λa.(a(λx.(w(xy)))))
w(xy)
Logged
Franco Barbanera
Moderator
Forumista Eroico
*****
Offline Offline

Posts: 2.622



WWW
« Reply #3 on: 15-06-2017, 19:21:09 »

E' diversa dal lambda-calculator
Logged
Franco Barbanera
Moderator
Forumista Eroico
*****
Offline Offline

Posts: 2.622



WWW
« Reply #4 on: 15-06-2017, 19:22:56 »

E dove sono i passaggi da
(λx.(w(xy)))(λa.(a(λx.(w(xy)))))

a

w(xy)

?
« Last Edit: 15-06-2017, 21:28:18 by Franco Barbanera » Logged
Dott.V
Matricola
*
Offline Offline

Posts: 35


« Reply #5 on: 15-06-2017, 19:28:25 »

(λx.(w(xy)))(λa.(a(λx.(w(xy)))))
(λf.(w(xy)){f/x})(λa.(a(λx.(w(xy))))) //qua passo a λf.M come parametro attuale (λa.(a(λx.(w(xy)))))
w(xy) //ottengo questo in un solo passaggio


Comunque il lambda-calculator mi da come risultato w xy che penso significhi w(xy)
Logged
Franco Barbanera
Moderator
Forumista Eroico
*****
Offline Offline

Posts: 2.622



WWW
« Reply #6 on: 15-06-2017, 21:29:43 »

(λf.(w(xy)){f/x})(λa.(a(λx.(w(xy))))) //qua passo a λf.M come parametro attuale (λa.(a(λx.(w(xy)))))
w(xy) //ottengo questo in un solo passaggio


Incomprensibile.
Logged
Franco Barbanera
Moderator
Forumista Eroico
*****
Offline Offline

Posts: 2.622



WWW
« Reply #7 on: 15-06-2017, 21:42:30 »

Per il lambda calculator, se scrivi xy
lui intende una variabile che si chiama xy.
Se vuoi indicare il termine corrispondente all'applicazione della variabile x alla variabile y
allora devi scrivere x y

Logged
Franco Barbanera
Moderator
Forumista Eroico
*****
Offline Offline

Posts: 2.622



WWW
« Reply #8 on: 06-07-2017, 13:38:51 »

Sto ancora aspettando la soluzione....

FB
Logged
Pages: [1]   Go Up
Print
Jump to: