tôi là kinda ngạc nhiên khi tôi đọc mã nguồn của các trường hợp Applicative Complex
và Monad Complex
từ GHC Data.Complex
mô-đun:Ý nghĩa và cách sử dụng số functor phức tạp và đơn nguyên?
-- | @since 4.9.0.0
instance Applicative Complex where
pure a = a :+ a
f :+ g <*> a :+ b = f a :+ g b
liftA2 f (x :+ y) (a :+ b) = f x a :+ f y b
-- | @since 4.9.0.0
instance Monad Complex where
a :+ b >>= f = realPart (f a) :+ imagPart (f b)
Cái quái gì ...? Ví dụ Applicative Complex
dường như đối xử với các số phức như chỉ hai mảng kích thước. Và cả hai dường như giống như các hoạt động mũi tên. Có cơ sở toán học nào đằng sau chúng không? Hoặc là có hay không, chúng được sử dụng để làm gì?
Chúng là trường hợp tuân thủ pháp luật, vì vậy không có lý do gì để chúng không tồn tại (đây là cơ sở 'toán học') – user2407038
Vì vậy, không có kết nối với phân tích phức tạp và số phức chỉ là kích thước hai mảng ở đây? –
Số phức * là, theo một nghĩa nào đó, chỉ các mảng có kích thước 2. ℂ là đẳng cấu với ℝ². – chepner