powiedzmy mam tej funkcji: (Haskell składni)Obliczanie pracy wykonanej przez x = f (x, x)
f x = (x,x)
Jaka jest praca (ilość obliczeń) przeprowadzone przez funkcję?
Początkowo myślałem, że jest to oczywiście stałe, ale co jeśli typ x
nie jest skończony, co oznacza, że x może zająć dowolną ilość pamięci? Trzeba by wziąć pod uwagę pracę wykonaną przez skopiowanie x
również, prawda?
To doprowadziło mnie do przekonania, że praca wykonana przez funkcję jest w rzeczywistości liniowa w rozmiarze wejścia.
To nie jest praca domowa dla siebie, ale pojawił się, gdy miałem do określenia pracy wykonywanej przez funkcję:
f x = [x]
który ma podobny problem, jak sądzę.
Dobre pytanie na http://cs.stackexchange.com/ – FlavorScape
Czy powinienem to przenieść? (Zakładając, że mogę, nie znam strony) – Guido
@Guido Nie możesz go przenieść, chociaż nie można go przenieść do miejsca docelowego, które moim zdaniem pasuje. IMHO, najlepiej zostaw to tutaj. – fuz