История изменений
Исправление monk, (текущая версия) :
{-@ solve :: f:([Bool] -> Bool) -> {r:Maybe [Bool] | r == Nothing || f $ fromJust r } @-}
solve :: ([Bool] -> Bool) -> Maybe [Bool]
{-@ solvePf xs:[Bool] f:([Bool]->Bool) -> { solve f == Nothing && f xs == False || f xs == True @-}
Исходная версия monk, :
{-@ solve :: f:([Bool] -> Bool) -> {r:Maybe [Bool] | r == Nothing || f $ fromJust r } @-}
solve :: ([Bool] -> Bool) -> Maybe [Bool]
{-@ solvePf xs:[Bool] f:([Bool]->Bool) -> { solve f == Nothing && f xs == False || f xs == True }