Was ist der Logarithmus oder die Root-Operation im Typraum?


27

Ich habe kürzlich Die zwei Dualitäten der Berechnung gelesen: Negative und fraktionale Typen . Das Papier erweitert die Summen- und Produkttypen und gibt den Typen a - bund eine Semantik a/b.

Im Gegensatz zu Addition und Multiplikation gibt es nicht nur eine, sondern zwei Umkehrungen von Potenzierung, Logarithmus und Wurzelbildung. Wenn Funktionstypen (a → b) typtheoretische Exponentiation sind, was bedeutet es angesichts des Typs a → b(oder b^a), den Typ logb(c)oder den Typ zu haben a√c?

Ist es überhaupt sinnvoll, Logarithmen und Wurzeln auf Typen auszudehnen?

Wenn ja, wurden in diesem Bereich Arbeiten durchgeführt, und wie lassen sich die Auswirkungen nachvollziehen?

Ich habe versucht, Informationen dazu über Logik nachzuschlagen, in der Hoffnung, dass die Curry-Howard-Korrespondenz mir helfen könnte, aber ohne Erfolg.

Antworten:


40

Ein Typ hat einen Logarithmus zur Basis von von genau dann, wenn . Das heißt, kann als ein Container von Elementen in Positionen gesehen werden, die durch . In der Tat geht es darum zu fragen, zu welcher Potenz wir erhöhen müssen, um zu erhalten .X P C P X C X P P X CCXPCPXCXPPXC

Es ist sinnvoll, mit wobei ein Funktor ist, wenn der Logarithmus existiert, was . Beachten Sie, dass, wenn , wir mit Sicherheit , der Container uns also nichts Interessantes sagt als seine Elemente: Container mit einer Auswahl von Formen tun dies keine Logarithmen haben.F l o glOGFFFlOGX(FX)FFXlOGFXF11

Bekannte Gesetze der Logarithmen sind sinnvoll, wenn Sie in Positionssätzen denken

lOG(K1)=0keine positionen im leeren behälterlOGich=1Behälter für eine, eine PositionlOG(F×G)=lOGF+lOGGpaar container, wahl der positionenlOG(FG)=lOGF×lOGGContainer von Containern, Paar von Positionen

Wir erhalten auch wobei unter dem . Das heißt, der Pfad zu jedem Element in einigen Codaten wird induktiv durch Iteration des Logarithmus definiert. Z.B,Z = l o glOGX(νY..T)=μZ.lOGXTZ=lOGXY.

logStreeinm=lOGX(νY..X×Y.)=μZ.1+Z=Neint

Da die Ableitung den Typ in Ein-Loch-Kontexten und der Logarithmus die Positionen angibt, sollten wir einen Zusammenhang erwarten, und zwar

F11lOGFF1

Wo es keine Formwahl gibt, ist eine Position genau das gleiche wie ein Kontext mit einem Loch, in dem die Elemente ausgerieben sind. Im Allgemeinen steht immer für die Auswahl einer Form zusammen mit einer Elementposition innerhalb dieser Form.F1F

Ich fürchte, ich habe weniger zu Wurzeln zu sagen, aber man könnte von einer ähnlichen Definition ausgehen und der Nase folgen. Weitere Verwendungen von Logarithmen von Typen finden Sie in Ralf Hinzes "Memofunktionen, polytypisch!". Muss rennen ...


3
Die Antwort von Da Man selbst. Willkommen Conor!
Andrej Bauer

Hmm, ich bin gespannt, was Wurzeltypen sind, da sie Typen mit einer imaginären Einwohnerzahl erfordern würden. Es sei denn, ich liege falsch. Ich werde Ihre Antwort annehmen, aber wenn Sie die Zeit haben, Wurzeln zu erarbeiten, wären Sie sehr dankbar.
Jeffrey

Kann das irgendwie mit der Taylor-Reihe von ln (1 + x) zusammenhängen?
Yatima2975

2
Mit Logarithmen und Exponentialen frage ich mich ... was brauchen wir, um ein Napier-Objekt zu konstruieren ? (zB das vermeintlich einzigartige Objekt, eso dass ∂e = e)
Rhymoid

1

Ich kenne keine Arbeit, die diese Linie verfolgt, aber ein paar Momente, in denen ich darüber nachdachte, führten mich zu dieser Hypothese: Wäre die "Wurzel" des Exponentialtyps nicht nur die Codomäne und der "Logarithmus" des Exponentials? Nur die Domain?


Richtig, ich denke deine Intuition ist gut, aber deine Schlussfolgerung ist falsch. Die Root-Operation und die Logarithmus-Operation erhalten Sie, wenn Sie die Codomäne bzw. die Domäne "invertieren", nicht die (Co-) Domäne selbst. Die Frage ist, was wir mit invertieren meinen und was die binäre Typoperation ist, die sie erzeugt.
Jeffrey

Ich bin mir nicht sicher, ob das stimmt. Wenn ich , ist die te Wurzel und der Basis- Logarithmus ist . Die Umkehrung ist von der Operation, nicht von den Komponenten. xyyxxy
Marc Hamann

Entschuldigung, ich war mir in meiner Terminologie nicht ganz sicher. Ich möchte nicht fragen, "was ist die Wurzel, was ist das Ergebnis der Anwendung der Logarithmusfunktion". Ich frage mich, wie das Verwurzeln funktioniert. Wie lautet die Operation zum Finden des Logarithmus? Wenn es sich um eine Expenentiation handelt, gibt es zwei Typen für die Root-Operation. Was ist zwei Arten unter dem Logarithmus. Was ich mit "das Argument umkehren" meine, ist etwas, für das es hier keine Zeit gibt zu erklären. Ich werde meine Frage klären, danke.
Jeffrey

Das von mir verlinkte Papier enthält eine Semantik für den Typ a - bund den Typ a / b. Es geht mir nicht um das Ergebnis der Reduzierung des Operationslogarithmus und der Wurzel, sondern darum, ihre Semantik als Operatoren vom Typ Binär zu verstehen.
Jeffrey
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.