Typ posiada logarytm oprzeć X w P , kiedy dokładnie C ≅ P → X . Oznacza to, C mogą być postrzegane jako pojemnika X elementów pozycjach określonych przez P . Rzeczywiście, jest to kwestia z prośbą o jaką moc P musimy podnieść X uzyskanie C .doXP.do≅P.→ XCXPPXC
Sensowna jest praca z gdzie F jest funktorem, ilekroć istnieje logarytm, co oznacza l o glogFF . Zauważ, że jeśli FlogX(FX) , wtedy na pewno mamy FFX≅logF→X , więc pojemnik nie mówi nam nic ciekawego poza jego elementami: pojemniki z wyborem kształtów nie mają logarytmów.F1≅1
Znane prawa logarytmów mają sens, gdy myślisz o zestawach pozycji
log(K1)logIlog(F×G)log(F⋅G)====01logF+logGlogF×logGno positions in empty containercontainer for one, one positionpair of containers, choice of positionscontainer of containers, pair of positions
logX(νY.T)=μZ.logXTZ=logXY
logStream=logX(νY.X×Y)=μZ.1+Z=Nat
Biorąc pod uwagę, że pochodna mówi nam o typie w kontekstach z jednym dołkiem, a logarytm mówi nam o pozycjach, powinniśmy spodziewać się związku, i rzeczywiście
F1≅1⇒logF≅∂F1
∂F1F
Obawiam się, że mam mniej do powiedzenia na temat korzeni, ale można zacząć od podobnej definicji i podążać za nosem. Aby uzyskać więcej zastosowań logarytmów typów, sprawdź „Funkcje memo, wieltypowo!” Ralfa Hinze. Muszę biec ...
e
taki, że∂e = e
)Nie znam żadnej pracy, która podąża za tą linią, ale kilka chwil przemyślenia doprowadziło mnie do tej hipotezy: czy „pierwiastek wykładniczego typu nie byłby po prostu kodomeną i„ logarytmem wykładniczym ” tylko domena?
źródło
→
jest to wydatek, jakie są dwa typy operacji root. Co to są dwa typy operacji logarytmicznej. To, co rozumiem przez „odwrócenie argumentu”, jest czymś, czego nie ma tutaj czasu na wyjaśnienie. Wyjaśnię moje pytanie, dzięki.a - b
i typua / b
. Nie interesuje mnie wynik zmniejszenia logarytmu operacji i rootowania, ale rozumienie ich semantyki jako operatorów typu binarnego.