www.jammni.de

Logo - Kleiner Drache
Login
Username:

Passwort:

Daten merken
Auto-Login
Registrieren
 
Online
niemand
 
Forumsuche
Suche nach:

Logo - DracheHaskell-Forum

Xan

Gepostet:
22.07.2012 22:28

Reduzieren von Lambda-Ausdrücken  
a) (λ x . x x) (λ a b c . c b a b c) (λ x . f x x) (f x) y
b) (λ x . x ) ((λ a b c . b ( a b c )) (λ f x . f (f x)))
c) (λ s . ( λ z . s ( s ( z ))))(λ w x y . x ( w x y ))(λ a . (λ b . b))
Sind diese Lösungen richtig???
a)(\\ x . x x) (\\ a b c . c b a b c) (\\ x . f x x) (f x) y
=>((\\abc.cbabc)(\\abc.cbabc))(\\x.fxx)(fx)y
=>((\\abc.cbabc)(\\mno.onmno))(\\x.fxx)(fx)y
=>(\\bc.cb(\\mno.onmno)bc)(\\x.fxx)(fx) y
=>(\\c.c(\\x.fxx)(\\mno.onmno)(\\x.fxx)c)(fx) y
=>((fx)(\\x.fxx)(\\mno.onmno))(\\x.fxx))fx)y

b)
(\\ x . x ) ((\\ a b c . b ( a b c )) (\\ f x . f (f x)))
=>(\\abc.b(abc))(\\fx.f(fx))
=>(\\bc.b((\\fx.f(fx))bc))
=>\\bc.b.((\\x.b(bx))c)
=>\\bc.b(b(bc))

c) (\\ s . ( \\ z . s ( s ( z ))))(\\ w x y . x ( w x y ))(\\ a . (\\ b . b))
=>(\\z.(\\wxy.x(wxy))((\\wxy.x(wxy))(z)))(\\a(\\b.b))
=>(\\wxy.x(wxy))(\\wxy.x(wxy))(\\a(\\b.b))
=>(\\xy.x((\\wxy.x(wxy))xy))(\\a.(\\b.b))
=>(\\y.(\\a.(\\b.b))((\\wxy.x(wxy))(\\a.(\\b.b))y)
=>(\\y.(\\b.b)(\\a.(\\b.b))y)
=>(\\y.(\\a.(\\b.b))y)
Zum Seitenanfang    
 
Landei

Gepostet:
23.07.2012 09:25

   
Das kannst du hier testen:

http://ellemose.dina.kvl.dk/~sestoft/lamreduce/lamframes.html

Statt Lambda einen Backslash schreiben.

Zum Seitenanfang