Đối với những người có tâm trí đáng ngờ, đây không phải là bài tập về nhà, chỉ tò mò thôi.Danh sách vô hạn các quầy vô hạn
Với một bảng chữ cái hữu hạn, có thể xây dựng một danh sách các từ dài vô hạn được làm từ bảng chữ cái theo thứ tự ngược lại không?
ví dụ cho bảng chữ cái "ab"
là nó có thể để xây dựng danh sách:
["aaaaaa...", "baaaaa...", "abaaaa...", "bbaaaa...", "aabaaa...", ...]
nơi ...
đại diện cho danh sách (và danh sách liệt kê) kéo dài đến chiều dài vô hạn.
Một nỗ lực ngây thơ là:
counters alphabet = [c:ounter | ounter <- counters alphabet, c <- alphabet]
nhưng điều này không làm việc kể từ khi nó bị bỏ đệ quy. Tất nhiên, với một phiên bản làm việc, nếu bạn cố in kết quả, bạn sẽ chỉ thấy phần tử đầu tiên được in dưới dạng danh sách vô hạn của phần tử đầu tiên từ bảng chữ cái. Tuy nhiên, bạn sẽ có thể làm điều này:
mapM_ (print . take 2) . take 4 . counters $ "ab"
và xem kết quả:
aa
ba
ab
bb
bạn nhận thức được có uncountably nhiều từ, do đó danh sách sẽ không bao gồm tất cả trong số họ? – sdcvvc
không phải là có một đẳng cấu cho tập hợp các số nguyên dương? A ở bên phải của b cuối cùng giống như số 0 đứng đầu trong một số nguyên – pat
Có, nhưng bạn đã viết trong câu hỏi "tất cả các từ dài vô hạn"; nó không phải tất cả, chỉ có những người được tạo thành từ "a" từ một số điểm. – sdcvvc