Apa operasi logaritma atau root di tipe-ruang?

27

Baru-baru ini saya membaca The Two Dualities of Computation: Negative and Fractional Types . Makalah ini memperluas jenis-jenis dan jenis-produk, memberikan semantik untuk jenis a - bdan a/b.

Tidak seperti penambahan dan perkalian, tidak ada satu tetapi dua invers dari eksponensial, logaritma, dan rooting. Jika tipe fungsi (a → b) adalah tipe-teoritik eksponensial, diberikan tipe a → b(atau b^a) apa artinya memiliki tipe logb(c)atau tipe a√c?

Apakah masuk akal untuk memperluas logaritma dan root ke tipe sama sekali?

Jika demikian, apakah ada pekerjaan di bidang ini, dan apa saja arahan yang baik tentang bagaimana memahami dampaknya?

Saya mencoba mencari informasi tentang hal ini melalui logika, berharap korespondensi Curry-Howard dapat membantu saya, tetapi tidak berhasil.

efrey
sumber

Jawaban:

40

Jenis memiliki logaritma dengan basis dari kapan tepatnya . Artinya, dapat dilihat sebagai wadah elemen di posisi yang diberikan oleh . Memang, itu soal meminta untuk apa daya harus kita menaikkan untuk mendapatkan .X P C P X C X P P X CCXPCPXCXPPXC

Masuk akal untuk bekerja dengan mana adalah functor, setiap kali logaritma ada, artinya . Perhatikan bahwa jika , maka kita pasti memiliki , jadi wadah memberi tahu kita tidak ada yang menarik selain unsur-unsurnya: wadah dengan pilihan bentuk tidak memiliki logaritma.F l o glogFFFlogX(FX)FFXlogFXF11

Hukum logaritma yang lazim masuk akal ketika Anda berpikir dalam hal set posisi

log(K1)=0no positions in empty containerlogI=1container for one, one positionlog(F×G)=logF+logGpair of containers, choice of positionslog(FG)=logF×logGcontainer of containers, pair of positions

Kami juga mendapatkan mana bawah binder. Yaitu, path ke setiap elemen dalam beberapa codata didefinisikan secara induktif dengan iterasi logaritma. Misalnya,Z = l o glogX(νY.T)=μZ.logXTZ=logXY

logStream=logX(νY.X×Y)=μZ.1+Z=Nat

Mengingat bahwa turunan memberi tahu kita tipe dalam konteks satu lubang dan logaritma memberi tahu kita posisi, kita harus mengharapkan koneksi, dan memang

F11logFF1

Di mana tidak ada pilihan bentuk, posisi hanya sama dengan konteks satu lubang dengan elemen-elemen dihilangkan. Secara umum, selalu mewakili pilihan bentuk bersama dengan posisi elemen dalam bentuk itu.FF1F

Saya khawatir saya tidak banyak bicara tentang akar, tetapi orang bisa mulai dari definisi yang sama dan mengikuti hidung seseorang. Untuk lebih banyak menggunakan jenis logaritma, periksa "Fungsi Memo Ralf Hinze, secara politis!". Harus lari ...

pekerja pigmen
sumber
3
Jawaban dari Da Man sendiri. Selamat datang Conor!
Andrej Bauer
Hmm, saya tertarik untuk melihat jenis akar apa, karena mereka akan membutuhkan jenis yang memiliki jumlah penduduk imajiner. Kecuali saya salah. Saya akan menerima jawaban Anda, tetapi jika Anda punya waktu untuk menguraikan akar-akar yang akan sangat dihargai.
efrey
Bisakah ini terkait dengan seri Taylor ln (1 + x) entah bagaimana?
yatima2975
2
Dengan logaritma dan eksponensial, saya bertanya-tanya ... apa yang kita butuhkan untuk membangun objek Napier ? (misalnya objek yang seharusnya unik eseperti itu ∂e = e)
Rhymoid
1

Saya tidak tahu ada pekerjaan yang mengejar baris ini, tetapi beberapa saat memikirkannya membawa saya ke hipotesis ini: bukankah "akar" dari tipe eksponensial hanya menjadi kodomain, dan "logaritma" dari eksponensial hanya domainnya?

Marc Hamann
sumber
Benar, jadi saya pikir intuisi Anda baik tetapi kesimpulan Anda tidak aktif. Operasi root dan operasi logaritma adalah apa yang Anda dapatkan ketika Anda "membalikkan" masing-masing domain atau domain, bukan domain (co) itu sendiri. Pertanyaannya adalah, apa yang kita maksud dengan membalikkan dan apa jenis operasi biner yang dihasilkannya?
efrey
Tidak yakin itu benar. Jika saya memiliki , akar ke- adalah dan basis logaritma adalah . Pembalikan dari operasi, bukan komponen. y x x yxyyxxy
Marc Hamann
Maaf, saya belum sepenuhnya jelas dalam terminologi saya. Saya tidak bermaksud bertanya "apa root, apa hasil dari penerapan fungsi logaritma". Saya bertanya-tanya apa operasi rooting. Apa operasi menemukan logaritma itu. Jika expenentiation, apa dua jenis di bawah operasi root. Apa dua jenis di bawah operasi logaritma. Yang saya maksud dengan "membalikkan argumen" adalah sesuatu yang tidak ada waktu untuk menjelaskannya di sini. Saya akan menjelaskan pertanyaan saya, terima kasih.
efrey
Makalah yang saya tautkan menyediakan semantik untuk jenis a - bdan jenisnya a / b. Saya tidak peduli dengan hasil mengurangi operasi logaritma dan root, tetapi dalam memahami semantik mereka sebagai operator tipe biner.
efrey