2018-12-12 17:12

Page 1
- For each of the following definitions, give the most general type, or write ”No type” if the definition is not correct in Haskell.
`fa``x`**=**`x`**:**`x``fb``x`**=**`x``++``x``fc``x``y`**=**`show`(`x``!!``y`)`fd`**=**`filter``fst``fe``x`**=**[`x`,`x`]`ff``x``y`**=****if**`x`**then**`y`**else**`-``y``fg`(`f`,`g`) (`x`,`y`)**=**(`f``x`,`g``y`)`fh``x``y`**=**`not`(`x``&&``y`)`fi`(`&`)`x``y`**=**`not`(`x``&``y`)`fj``x``y`**=**(`x``+``y`)`/`2`fk``x`**=**[`z`**|**`y`**<-**`x`,`z`**<-**`y`]`fl``x`**=**(`x`,`x`)`fm``x``y`**=**`x``<``y``+`1`fn``x`(`y`,`z`)**=**`x``y``z`