<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="/forest/default.xsl"?>
<fr:tree xmlns:fr="http://www.forester-notes.org" xmlns:html="http://www.w3.org/1999/xhtml" xmlns:xml="http://www.w3.org/XML/1998/namespace" root="false" base-url="/forest/">
  <fr:frontmatter>
    <fr:authors />
    <fr:uri>https://trebor-huang.github.io/forest/trebor/</fr:uri>
    <fr:display-uri>trebor</fr:display-uri>
    <fr:route>/forest/trebor/</fr:route>
    <fr:title text="Trebor">Trebor</fr:title>
    <fr:taxon>Person</fr:taxon>
    <fr:meta name="institution">Indiana University, Bloomington</fr:meta>
    <fr:meta name="position">PhD Student</fr:meta>
    <fr:meta name="github">https://github.com/Trebor-Huang</fr:meta>
    <fr:meta name="mastodon">https://types.pl/@trebor</fr:meta>
    <fr:meta name="email">xh40@iu.edu</fr:meta>
  </fr:frontmatter>
  <fr:mainmatter>
    <html:p>
  My name is 黄栩 (<html:em>Huang, Xu</html:em>), but I go by the name <html:em>Trebor</html:em> online. I’m interested in the syntax and semantics of dependent type theory, in particular homotopy type theory and cubical type theory.
</html:p>
    <html:p>
  I am currently a PhD student at Indiana University Bloomington, supervised by <fr:link href="/forest/angiuli/" title="Carlo Angiuli" uri="https://trebor-huang.github.io/forest/angiuli/" display-uri="angiuli" type="local">Carlo Angiuli</fr:link>. I graduated from Tsinghua University.
</html:p>
    <fr:tree show-metadata="false">
      <fr:frontmatter>
        <fr:authors />
        <fr:title text="Writings">Writings</fr:title>
      </fr:frontmatter>
      <fr:mainmatter>
        <html:ul><html:li><html:em>Fat cell structures and generalized algebraic theories</html:em> (with <fr:link href="/forest/angiuli/" title="Carlo Angiuli" uri="https://trebor-huang.github.io/forest/angiuli/" display-uri="angiuli" type="local">Carlo Angiuli</fr:link>), to appear in LICS 2026.
    </html:li>
    <html:li><html:em><fr:link href="/forest/cubical-normal-form/" title="Normal forms in Cubical Type Theory" uri="https://trebor-huang.github.io/forest/cubical-normal-form/" display-uri="cubical-normal-form" type="local">Normal forms in Cubical Type Theory</fr:link></html:em>, ArXiv preprint.
    </html:li>
    <html:li><html:em><fr:link href="/forest/stc-hard-way/" title="Synthetic Tait Computability the Hard Way" uri="https://trebor-huang.github.io/forest/stc-hard-way/" display-uri="stc-hard-way" type="local">Synthetic Tait Computability the Hard Way</fr:link></html:em>, ArXiv preprint.
    </html:li>
    <html:li><html:em><fr:link href="/forest/exp-locale/" title="Exponentiable locales, revisited" uri="https://trebor-huang.github.io/forest/exp-locale/" display-uri="exp-locale" type="local">Exponentiable locales, revisited</fr:link></html:em>, ArXiv preprint.
    </html:li>
    <html:li><html:em>Recursion formula for <fr:tex display="inline"><![CDATA[U_q (\mathfrak {e}_6)]]></fr:tex> knot invariants</html:em>, Undergraduate Thesis. <html:span class="tag">[<fr:link href="https://trebor-huang.github.io/thesis-slides.pdf" type="external">Slides</fr:link>]</html:span>.
    </html:li></html:ul>
        <html:p>
    I have a <fr:link href="/forest/trebor-0003/" title="List of open problems" uri="https://trebor-huang.github.io/forest/trebor-0003/" display-uri="trebor-0003" type="local">List of open problems</fr:link> that I’m interested in.
  </html:p>
        <html:p>
    I am also writing some expository material about type theory in Chinese. Mainly <html:em><fr:link href="/forest/history/" title="History of Type Theory" uri="https://trebor-huang.github.io/forest/history/" display-uri="history" type="local">History of Type Theory</fr:link></html:em> and <html:em><fr:link href="/forest/models/" title="Models of Dependent Type Theory" uri="https://trebor-huang.github.io/forest/models/" display-uri="models" type="local">Models of Dependent Type Theory</fr:link></html:em> (unfinished).
  </html:p>
      </fr:mainmatter>
    </fr:tree>
    <fr:tree show-metadata="false">
      <fr:frontmatter>
        <fr:authors />
        <fr:title text="Random fun stuff">Random fun stuff</fr:title>
      </fr:frontmatter>
      <fr:mainmatter>
        <html:ul><html:li><fr:link href="/forest/trebor-0001/" title="Trebor’s forest" uri="https://trebor-huang.github.io/forest/trebor-0001/" display-uri="trebor-0001" type="local">This site</fr:link> itself is my forest, where I write about stuff I learned.
    </html:li>
    <html:li><fr:link href="https://trebor-huang.github.io/LieSphereGeometry/" type="external">Lie Sphere Geometry,</fr:link> an interesting geometry with <fr:tex display="inline"><![CDATA[\textrm {O}(3, 2)]]></fr:tex> symmetry where points, lines and circles are on the same footing. <html:span class="tag">[<fr:link href="https://github.com/Trebor-Huang/LieSphereGeometry" type="external">GitHub repo</fr:link>]</html:span>.
    </html:li>
    <html:li><fr:link href="https://trebor-huang.github.io/ASKL/main.htm" type="external">ASKL,</fr:link> a 4K rhythm game supporting the Malody format.
    </html:li></html:ul>
      </fr:mainmatter>
    </fr:tree>
  </fr:mainmatter>
  <fr:backmatter>
    <fr:tree show-metadata="false" hidden-when-empty="true">
      <fr:frontmatter>
        <fr:authors />
        <fr:title text="References">References</fr:title>
      </fr:frontmatter>
      <fr:mainmatter>
        <fr:tree show-metadata="true" expanded="false" toc="false" numbered="false">
          <fr:frontmatter>
            <fr:authors>
              <fr:author>
                <fr:link href="/forest/trebor/" title="Trebor" uri="https://trebor-huang.github.io/forest/trebor/" display-uri="trebor" type="local">Trebor</fr:link>
              </fr:author>
            </fr:authors>
            <fr:date>
              <fr:year>2026</fr:year>
              <fr:month>3</fr:month>
              <fr:day>26</fr:day>
            </fr:date>
            <fr:uri>https://trebor-huang.github.io/forest/cubical-normal-form/</fr:uri>
            <fr:display-uri>cubical-normal-form</fr:display-uri>
            <fr:route>/forest/cubical-normal-form/</fr:route>
            <fr:title text="Normal forms in Cubical Type Theory">Normal forms in Cubical Type Theory</fr:title>
            <fr:taxon>Reference</fr:taxon>
            <fr:meta name="doi">10.48550/arXiv.2603.24923</fr:meta>
          </fr:frontmatter>
          <fr:mainmatter>
            <html:p>
  This note documents the specification of normal forms in cubical type theory. The definition is already present in the proof of normalization for cubical type theory, but we present it in a more traditional style explicitly for reference. 
</html:p>
          </fr:mainmatter>
        </fr:tree>
        <fr:tree show-metadata="true" expanded="false" toc="false" numbered="false">
          <fr:frontmatter>
            <fr:authors>
              <fr:author>
                <fr:link href="/forest/trebor/" title="Trebor" uri="https://trebor-huang.github.io/forest/trebor/" display-uri="trebor" type="local">Trebor</fr:link>
              </fr:author>
            </fr:authors>
            <fr:date>
              <fr:year>2025</fr:year>
              <fr:month>6</fr:month>
              <fr:day>21</fr:day>
            </fr:date>
            <fr:uri>https://trebor-huang.github.io/forest/exp-locale/</fr:uri>
            <fr:display-uri>exp-locale</fr:display-uri>
            <fr:route>/forest/exp-locale/</fr:route>
            <fr:title text="Exponentiable locales, revisited">Exponentiable locales, revisited</fr:title>
            <fr:taxon>Reference</fr:taxon>
            <fr:meta name="doi">10.48550/arXiv.2507.15579</fr:meta>
          </fr:frontmatter>
          <fr:mainmatter>
            <html:p>
  We give a moderately motivated exposition of exponentiable locales and the construction of exponentials in <fr:tex display="inline"><![CDATA[\textsf {Loc}]]></fr:tex>, without assuming prior knowledge of exponential topological spaces or continuous posets.
</html:p>
          </fr:mainmatter>
        </fr:tree>
        <fr:tree show-metadata="true" expanded="false" toc="false" numbered="false">
          <fr:frontmatter>
            <fr:authors>
              <fr:author>
                <fr:link href="/forest/trebor/" title="Trebor" uri="https://trebor-huang.github.io/forest/trebor/" display-uri="trebor" type="local">Trebor</fr:link>
              </fr:author>
            </fr:authors>
            <fr:date>
              <fr:year>2025</fr:year>
              <fr:month>5</fr:month>
              <fr:day>25</fr:day>
            </fr:date>
            <fr:uri>https://trebor-huang.github.io/forest/history/</fr:uri>
            <fr:display-uri>history</fr:display-uri>
            <fr:route>/forest/history/</fr:route>
            <fr:title text="History of Type Theory">History of Type Theory</fr:title>
            <fr:taxon>Reference</fr:taxon>
            <fr:meta name="external">https://github.com/Trebor-Huang/history</fr:meta>
          </fr:frontmatter>
          <fr:mainmatter />
        </fr:tree>
        <fr:tree show-metadata="true" expanded="false" toc="false" numbered="false">
          <fr:frontmatter>
            <fr:authors>
              <fr:author>
                <fr:link href="/forest/trebor/" title="Trebor" uri="https://trebor-huang.github.io/forest/trebor/" display-uri="trebor" type="local">Trebor</fr:link>
              </fr:author>
            </fr:authors>
            <fr:date>
              <fr:year>2023</fr:year>
              <fr:month>10</fr:month>
              <fr:day>3</fr:day>
            </fr:date>
            <fr:uri>https://trebor-huang.github.io/forest/stc-hard-way/</fr:uri>
            <fr:display-uri>stc-hard-way</fr:display-uri>
            <fr:route>/forest/stc-hard-way/</fr:route>
            <fr:title text="Synthetic Tait Computability the Hard Way">Synthetic Tait Computability the Hard Way</fr:title>
            <fr:taxon>Reference</fr:taxon>
            <fr:meta name="doi">10.48550/arXiv.2310.02051</fr:meta>
          </fr:frontmatter>
          <fr:mainmatter>
            <html:p>
  We walk through a few proofs of canonicity and normalization, each one with more aspects dissected and re-expressed in category theory, so that readers can compare the difference across proofs. During this process we isolate the different ideas that make up the proofs. Finally we arrive at synthetic Tait computability as proposed by J. Sterling. We also give a synthetic proof for parametricity of system F.
</html:p>
          </fr:mainmatter>
        </fr:tree>
        <fr:tree show-metadata="true" expanded="false" toc="false" numbered="false">
          <fr:frontmatter>
            <fr:authors>
              <fr:author>
                <fr:link href="/forest/trebor/" title="Trebor" uri="https://trebor-huang.github.io/forest/trebor/" display-uri="trebor" type="local">Trebor</fr:link>
              </fr:author>
            </fr:authors>
            <fr:uri>https://trebor-huang.github.io/forest/models/</fr:uri>
            <fr:display-uri>models</fr:display-uri>
            <fr:route>/forest/models/</fr:route>
            <fr:title text="Models of Dependent Type Theory">Models of Dependent Type Theory</fr:title>
            <fr:taxon>Reference</fr:taxon>
            <fr:meta name="external">https://github.com/Trebor-Huang/model</fr:meta>
          </fr:frontmatter>
          <fr:mainmatter />
        </fr:tree>
      </fr:mainmatter>
    </fr:tree>
    <fr:tree show-metadata="false" hidden-when-empty="true">
      <fr:frontmatter>
        <fr:authors />
        <fr:title text="Context">Context</fr:title>
      </fr:frontmatter>
      <fr:mainmatter />
    </fr:tree>
    <fr:tree show-metadata="false" hidden-when-empty="true">
      <fr:frontmatter>
        <fr:authors />
        <fr:title text="Backlinks">Backlinks</fr:title>
      </fr:frontmatter>
      <fr:mainmatter>
        <fr:tree show-metadata="true" expanded="false" toc="false" numbered="false">
          <fr:frontmatter>
            <fr:authors>
              <fr:author>
                <fr:link href="/forest/trebor/" title="Trebor" uri="https://trebor-huang.github.io/forest/trebor/" display-uri="trebor" type="local">Trebor</fr:link>
              </fr:author>
            </fr:authors>
            <fr:date>
              <fr:year>2026</fr:year>
              <fr:month>6</fr:month>
              <fr:day>14</fr:day>
            </fr:date>
            <fr:uri>https://trebor-huang.github.io/forest/trebor-0003/</fr:uri>
            <fr:display-uri>trebor-0003</fr:display-uri>
            <fr:route>/forest/trebor-0003/</fr:route>
            <fr:title text="List of open problems">List of open problems</fr:title>
          </fr:frontmatter>
          <fr:mainmatter><html:p>
  The following is a list of open (to my knowledge) problems that I’m interested in, with some thoughts on them. They are mostly in type theory, constructive logic and computability theory. I think about them from time to time, and if any problem is already solved in the literature, or has a new claimed solution, please contact <fr:link href="/forest/trebor/" title="Trebor" uri="https://trebor-huang.github.io/forest/trebor/" display-uri="trebor" type="local">me</fr:link>!
</html:p>
  
  
  <fr:tree show-metadata="false" expanded="false" numbered="false"><fr:frontmatter><fr:authors><fr:author><fr:link href="/forest/trebor/" title="Trebor" uri="https://trebor-huang.github.io/forest/trebor/" display-uri="trebor" type="local">Trebor</fr:link></fr:author></fr:authors><fr:date><fr:year>2026</fr:year><fr:month>6</fr:month><fr:day>14</fr:day></fr:date><fr:uri>https://trebor-huang.github.io/forest/open-0001/</fr:uri><fr:display-uri>open-0001</fr:display-uri><fr:route>/forest/open-0001/</fr:route><fr:title text="Strongly total functions on Church numerals">Strongly total functions on Church numerals</fr:title><fr:taxon>Question</fr:taxon></fr:frontmatter><fr:mainmatter><html:p>
  What are all the total functions <fr:tex display="inline"><![CDATA[f : \mathbb {N} \to  \mathbb {N}]]></fr:tex> on natural numbers such that there exists an untyped <fr:tex display="inline"><![CDATA[\lambda ]]></fr:tex>-calculus term <fr:tex display="inline"><![CDATA[t]]></fr:tex> such that <fr:tex display="inline"><![CDATA[t c_n]]></fr:tex> (where <fr:tex display="inline"><![CDATA[c_n]]></fr:tex> is the <fr:tex display="inline"><![CDATA[n]]></fr:tex>-th Church numeral) is strongly normalizing for each <fr:tex display="inline"><![CDATA[n]]></fr:tex>, and evaluates to <fr:tex display="inline"><![CDATA[c_{f(n)}]]></fr:tex>? This is raised on <fr:link href="https://mathoverflow.net/questions/295380/is-every-total-computable-function-definable-by-a-strongly-total-lambda-term" type="external">MathOverflow</fr:link>.
</html:p><html:p>
  In some sense, this is asking for a kind of limit on type systems that guarantee strong normalization. This class of total functions includes for example all the functions of type <fr:tex display="inline"><![CDATA[\mathbb {N} \to  \mathbb {N}]]></fr:tex> in system <fr:tex display="inline"><![CDATA[\mathrm {F}]]></fr:tex>, where <fr:tex display="inline"><![CDATA[\mathbb {N}]]></fr:tex> is encoded as <fr:tex display="inline"><![CDATA[\forall  \alpha . (\alpha  \to  \alpha ) \to  (\alpha  \to  \alpha )]]></fr:tex>. These are the functions provably total in second order Peano arithmetic. Similarly system <fr:tex display="inline"><![CDATA[\mathrm {F}\omega ]]></fr:tex> gives all the functions provably total in higher order logic. These are all we get out of the <fr:tex display="inline"><![CDATA[\lambda ]]></fr:tex>-cube.
</html:p><html:p>
  However, note that it’s not necessarily true that system <fr:tex display="inline"><![CDATA[\mathrm {F}]]></fr:tex> can only provide us with these functions. It is possible that a term <fr:tex display="inline"><![CDATA[t]]></fr:tex> has the property that each <fr:tex display="inline"><![CDATA[t c_n]]></fr:tex> is typable (hence strongly normalizing) in system <fr:tex display="inline"><![CDATA[\mathrm {F}]]></fr:tex>, but the types assigned to <fr:tex display="inline"><![CDATA[t]]></fr:tex> or <fr:tex display="inline"><![CDATA[c_n]]></fr:tex> depends on <fr:tex display="inline"><![CDATA[n]]></fr:tex>. I’m also interested to see if there are these wild total functions.
</html:p><html:p>
  Perhaps one direction of attack is to consider higher order logic equipped with stronger and stronger large cardinal axioms. We then somehow translate them to strongly normalizing type systems (with more and more universes).
</html:p></fr:mainmatter></fr:tree>
  <fr:tree show-metadata="false" expanded="false" numbered="false"><fr:frontmatter><fr:authors><fr:author><fr:link href="/forest/trebor/" title="Trebor" uri="https://trebor-huang.github.io/forest/trebor/" display-uri="trebor" type="local">Trebor</fr:link></fr:author></fr:authors><fr:date><fr:year>2026</fr:year><fr:month>6</fr:month><fr:day>14</fr:day></fr:date><fr:uri>https://trebor-huang.github.io/forest/open-0002/</fr:uri><fr:display-uri>open-0002</fr:display-uri><fr:route>/forest/open-0002/</fr:route><fr:title text="Dimensionlity of the rational number locale">Dimensionlity of the rational number locale</fr:title><fr:taxon>Question</fr:taxon></fr:frontmatter><fr:mainmatter><html:p>
  Classify the locales <fr:tex display="inline"><![CDATA[\mathbb {Q}^n]]></fr:tex> up to homeomorphism. This is raised on <fr:link href="https://mathoverflow.net/questions/495142/dimensionality-of-the-rational-numbers-locale" type="external">MathOverflow</fr:link>.
</html:p><html:p>
  It is well-known that <fr:tex display="inline"><![CDATA[\mathbb {Q}]]></fr:tex> is not homeomorphic to <fr:tex display="inline"><![CDATA[\mathbb {Q}^2]]></fr:tex> as locales, which is in stark contrast with topological spaces where <fr:tex display="inline"><![CDATA[\mathbb {Q}^n]]></fr:tex> are all homeomorphic. The proof is a delicate analysis on rectangles on the rational plane. Perhaps similar arguments can be carried out on higher dimensional spaces, but I haven’t given too much thought to it.
</html:p></fr:mainmatter></fr:tree>
  <fr:tree show-metadata="false" expanded="false" numbered="false"><fr:frontmatter><fr:authors><fr:author><fr:link href="/forest/trebor/" title="Trebor" uri="https://trebor-huang.github.io/forest/trebor/" display-uri="trebor" type="local">Trebor</fr:link></fr:author></fr:authors><fr:date><fr:year>2026</fr:year><fr:month>6</fr:month><fr:day>15</fr:day></fr:date><fr:uri>https://trebor-huang.github.io/forest/open-0003/</fr:uri><fr:display-uri>open-0003</fr:display-uri><fr:route>/forest/open-0003/</fr:route><fr:title text="\infty -categories in vanilla HoTT"><fr:tex display="inline"><![CDATA[\infty ]]></fr:tex>-categories in vanilla HoTT</fr:title><fr:taxon>Question</fr:taxon></fr:frontmatter><fr:mainmatter><html:p>
  Formalize, or prove the impossibility for a definition of <fr:tex display="inline"><![CDATA[(\infty , 1)]]></fr:tex>-categories in the style of synthetic homotopy theory in HoTT.
</html:p><html:p>
  Defining <fr:tex display="inline"><![CDATA[\infty ]]></fr:tex>-categories following the usual, classical definition in HoTT is generally considered unproblematic, and just a matter of effort. There has been various projects working towards this.
</html:p><html:p>
  A definition of <fr:tex display="inline"><![CDATA[\infty ]]></fr:tex>-categories synthetically should have the correct interpretation in the canonical model of HoTT in <fr:tex display="inline"><![CDATA[\infty ]]></fr:tex>-groupoids (or more concretely, simplicial sets), up to equivalence. We should also be able to extract the <fr:tex display="inline"><![CDATA[\hom ]]></fr:tex>-types, and define composition and the <fr:tex display="inline"><![CDATA[n]]></fr:tex>-associator for each concrete number <fr:tex display="inline"><![CDATA[n]]></fr:tex>. More generally, <fr:link href="https://drive.google.com/file/d/1lKaq7watGGl3xvjqw9qHjm6SDPFJ2-0o/view" type="external">the axioms</fr:link> developed by Cisinski and others should be provable.
</html:p><html:p>
  There has been various approaches to defining <fr:tex display="inline"><![CDATA[\infty ]]></fr:tex>-categories in <html:em>extensions</html:em> of HoTT. They generally correspond to the two styles of defining categories:
</html:p><html:ul><html:li>Defining <fr:tex display="inline"><![CDATA[\hom ]]></fr:tex>-sets as families of sets over the collection of objects. Generalizing to <fr:tex display="inline"><![CDATA[\infty ]]></fr:tex>-categories requires arbitrarily long chains of dependencies. This is the idea of the work of <fr:link href="https://arxiv.org/abs/2311.18781" type="external">displayed type theory</fr:link>.</html:li>
  <html:li>Defining the total collection of arrows, with two projections <fr:tex display="inline"><![CDATA[\operatorname {dom}]]></fr:tex> and <fr:tex display="inline"><![CDATA[\operatorname {cod}]]></fr:tex>. Generalizing to <fr:tex display="inline"><![CDATA[\infty ]]></fr:tex>-categories requires the definition of (semi-)simplicial spaces, which require an infinite tower of coherences between these projection maps. This leads to the work of <fr:link href="https://arxiv.org/abs/1705.03307" type="external">two-level type theory</fr:link>.</html:li></html:ul></fr:mainmatter></fr:tree>
  <fr:tree show-metadata="false" expanded="false" numbered="false"><fr:frontmatter><fr:authors><fr:author><fr:link href="/forest/trebor/" title="Trebor" uri="https://trebor-huang.github.io/forest/trebor/" display-uri="trebor" type="local">Trebor</fr:link></fr:author></fr:authors><fr:date><fr:year>2026</fr:year><fr:month>6</fr:month><fr:day>15</fr:day></fr:date><fr:uri>https://trebor-huang.github.io/forest/open-0004/</fr:uri><fr:display-uri>open-0004</fr:display-uri><fr:route>/forest/open-0004/</fr:route><fr:title text="The theory of presentable and accessible categories in type theory">The theory of presentable and accessible categories in type theory</fr:title><fr:taxon>Question</fr:taxon></fr:frontmatter><fr:mainmatter><html:p>
  Is it possible to develop the theory of presentable and accessible categories in a constructive (or even predicative) type theory? Barring this, how can we develop this theory in a type-theory idiomatic way?
</html:p><html:p>
  It is known that the classical theory of presentable and accessible categories heavily relies on the axiom of choice. There are several questions on MathOverflow on this topic:
</html:p><html:ul><html:li><fr:link href="https://mathoverflow.net/questions/459374/locally-presentable-and-accessible-categories-without-the-axiom-of-choice" type="external">Locally presentable and accessible categories without the axiom of choice?</fr:link></html:li>
  <html:li><fr:link href="https://mathoverflow.net/questions/512002/accessibility-of-small-categories-without-choice" type="external">Accessibility of small categories without choice</fr:link></html:li>
  <html:li><fr:link href="https://mathoverflow.net/questions/512250/obstructions-to-the-theory-of-locally-presentable-categories-without-choice" type="external">Obstructions to the theory of locally presentable categories without choice</fr:link></html:li></html:ul><html:p>
  We can avoid a lot of choice unique up to unique isomorphism in a univalent type theory. It may also be possible to redefine notions of size using an inductive-recursively defined Tarski universe. I suspect this to be easier to use than trying to develop a theory of cardinals.
</html:p></fr:mainmatter></fr:tree>
  <fr:tree show-metadata="false" expanded="false" numbered="false"><fr:frontmatter><fr:authors><fr:author><fr:link href="/forest/trebor/" title="Trebor" uri="https://trebor-huang.github.io/forest/trebor/" display-uri="trebor" type="local">Trebor</fr:link></fr:author></fr:authors><fr:date><fr:year>2026</fr:year><fr:month>6</fr:month><fr:day>15</fr:day></fr:date><fr:uri>https://trebor-huang.github.io/forest/open-0005/</fr:uri><fr:display-uri>open-0005</fr:display-uri><fr:route>/forest/open-0005/</fr:route><fr:title text="Recursively realizable one-variable formula in propositional logic">Recursively realizable one-variable formula in propositional logic</fr:title><fr:taxon>Question</fr:taxon></fr:frontmatter><fr:mainmatter><html:p>
  What are all the propositional formulas involving one propositional variable that are realizable with recursive functions? In other words, what propositions are true in the computable world?
</html:p><html:p>
  Constructive logic is realizable with computable functions, and so we can restrict our attention to the free Heyting algebra generated by one element, also known as the <fr:link href="https://commons.wikimedia.org/wiki/File:Rieger-Nishimura.svg" type="external">Rieger–Nishimura lattice</fr:link>, and asking if any proposition other than <fr:tex display="inline"><![CDATA[\top ]]></fr:tex> is realizable. According to this <fr:link href="https://www.jstor.org/stable/25470303" type="external">survey</fr:link>, although there are propositions unprovable in constructive logic but realizable computably, the existence of such one-variable propositions is still open.
</html:p></fr:mainmatter></fr:tree>
  <fr:tree show-metadata="false" expanded="false" numbered="false"><fr:frontmatter><fr:authors><fr:author><fr:link href="/forest/trebor/" title="Trebor" uri="https://trebor-huang.github.io/forest/trebor/" display-uri="trebor" type="local">Trebor</fr:link></fr:author></fr:authors><fr:date><fr:year>2026</fr:year><fr:month>6</fr:month><fr:day>15</fr:day></fr:date><fr:uri>https://trebor-huang.github.io/forest/open-0006/</fr:uri><fr:display-uri>open-0006</fr:display-uri><fr:route>/forest/open-0006/</fr:route><fr:title text="The orthogonal and unitary groups in synthetic homotopy theory">The orthogonal and unitary groups in synthetic homotopy theory</fr:title><fr:taxon>Question</fr:taxon></fr:frontmatter><fr:mainmatter><html:p>
  Define the orthogonal groups <fr:tex display="inline"><![CDATA[\mathrm {O}(n)]]></fr:tex> and the unitary groups <fr:tex display="inline"><![CDATA[\mathrm {U}(n)]]></fr:tex> in synthetic homotopy theory, together with their actions on the spheres of corresponding dimensions. Their deloopings as well as the direct limits <fr:tex display="inline"><![CDATA[\mathrm {O}]]></fr:tex>, <fr:tex display="inline"><![CDATA[\mathrm {BO}]]></fr:tex> etc. are also of interest. These definitions are necessary for the study of Bott periodicity, as well as the <fr:tex display="inline"><![CDATA[J]]></fr:tex>-homomorphism in the homotopy groups of spheres.
</html:p><html:p>
  There has been <fr:link href="https://www.davidjaz.com/Talks/DJM-Hottest-Dec-2023.pdf" type="external">work</fr:link> on defining the tangent unit sphere bundle of spheres. It is plausible that we can build on this construction to define the orthogonal group. It is however unclear how we would define the group operation. See also <fr:link href="https://www.math.uwo.ca/faculty/kapulkin/seminars/hottestfiles/Christensen-2024-04-11-HoTTEST.pdf" type="external">these slides</fr:link>.
</html:p></fr:mainmatter></fr:tree>
  <fr:tree show-metadata="false" expanded="false" numbered="false"><fr:frontmatter><fr:authors><fr:author><fr:link href="/forest/trebor/" title="Trebor" uri="https://trebor-huang.github.io/forest/trebor/" display-uri="trebor" type="local">Trebor</fr:link></fr:author></fr:authors><fr:date><fr:year>2026</fr:year><fr:month>6</fr:month><fr:day>15</fr:day></fr:date><fr:uri>https://trebor-huang.github.io/forest/open-0007/</fr:uri><fr:display-uri>open-0007</fr:display-uri><fr:route>/forest/open-0007/</fr:route><fr:title text="Meta-theory of complex inductive definitions">Meta-theory of complex inductive definitions</fr:title><fr:taxon>Question</fr:taxon></fr:frontmatter><fr:mainmatter><html:p>
  Specify a schema of inductive definitions that can handle arbitrary interleaving, nesting and dependency of induction and recursion. Prove or disprove the consistency, canonicity and normalization of these inductive definitions, as well as their compatibility with excluded middle, the axiom of choice and univalence.
</html:p><html:p>
  Agda is extremely permissive on the validity of inductive definitions, far surpassing any literature. The declaration and definitions can be arbitrarily interleaved, and later definitions can refer to previous declarations freely (subject to termination checking). The strict-positivity checking is an “open” condition, meaning that each new feature of the type theory adds to the possible inductive definitions. So a “closed” approach such as reducing inductive types to <fr:tex display="inline"><![CDATA[\mathsf {W}]]></fr:tex>-types seems inappropriate.
</html:p><html:p>
  Some of these inductive types have been found to be inconsistent, or incompatible with excluded middle or univalence. However, fixing these inconsistencies reactively is not an ideal solution. Given that a large portion of these definitions seems intuitive, it should be possible to establish at least their consistency relative to set theory with well-known large cardinal axioms. See also <fr:link href="https://proofassistants.stackexchange.com/questions/1981/what-are-the-complex-induction-patterns-supported-by-agda" type="external">this StackExchange question</fr:link>.
</html:p></fr:mainmatter></fr:tree>
  <fr:tree show-metadata="false" expanded="false" numbered="false"><fr:frontmatter><fr:authors><fr:author><fr:link href="/forest/trebor/" title="Trebor" uri="https://trebor-huang.github.io/forest/trebor/" display-uri="trebor" type="local">Trebor</fr:link></fr:author></fr:authors><fr:date><fr:year>2026</fr:year><fr:month>6</fr:month><fr:day>15</fr:day></fr:date><fr:uri>https://trebor-huang.github.io/forest/open-0008/</fr:uri><fr:display-uri>open-0008</fr:display-uri><fr:route>/forest/open-0008/</fr:route><fr:title text="Higher effective topos">Higher effective topos</fr:title><fr:taxon>Question</fr:taxon></fr:frontmatter><fr:mainmatter><html:p>
  Define an elementary <fr:tex display="inline"><![CDATA[\infty ]]></fr:tex>-topos version of the effective topos. In particular, the <fr:tex display="inline"><![CDATA[1]]></fr:tex>-truncated objects should recover exactly the effective topos.
</html:p><html:p>
  There has been a line of work defining and working with <fr:link href="https://arxiv.org/abs/2503.24279" type="external">the effective 2-topos</fr:link>. On the other hand, trying to directly define assemblies in cubical sets gives the <fr:link href="https://arxiv.org/abs/1803.06649" type="external">cubical assemblies</fr:link>, which unfortunately does not satisfy some principles that we expect of the effective topos, such as the Church thesis. There are <fr:link href="https://arxiv.org/abs/1905.03014" type="external">ways</fr:link> to fix this problem, but it is ad hoc and doesn’t seem to be satisfactory as an answer to the question.
</html:p></fr:mainmatter></fr:tree>
  <fr:tree show-metadata="false" expanded="false" numbered="false"><fr:frontmatter><fr:authors><fr:author><fr:link href="/forest/trebor/" title="Trebor" uri="https://trebor-huang.github.io/forest/trebor/" display-uri="trebor" type="local">Trebor</fr:link></fr:author></fr:authors><fr:date><fr:year>2026</fr:year><fr:month>6</fr:month><fr:day>15</fr:day></fr:date><fr:uri>https://trebor-huang.github.io/forest/open-0009/</fr:uri><fr:display-uri>open-0009</fr:display-uri><fr:route>/forest/open-0009/</fr:route><fr:title text="Computational interpretation of propositional resizing">Computational interpretation of propositional resizing</fr:title><fr:taxon>Question</fr:taxon></fr:frontmatter><fr:mainmatter><html:p>
  Give a computational interpretation of propositional resizing in homotopy type theory.
</html:p><html:p>
  A naïve approach does not work here, since the computation needs to somehow get stuck on the proof of propositionality. Otherwise, we can assume (falsely) that any type is a proposition, which allows us to replicate Russell’s paradox and produce non-terminating reduction in a false context. This is related to <fr:link href="/forest/open-0008/" title="Higher effective topos" uri="https://trebor-huang.github.io/forest/open-0008/" display-uri="open-0008" type="local">Question <fr:contextual-number uri="https://trebor-huang.github.io/forest/open-0008/" display-uri="open-0008" /></fr:link>.
</html:p></fr:mainmatter></fr:tree>
</fr:mainmatter>
        </fr:tree>
      </fr:mainmatter>
    </fr:tree>
    <fr:tree show-metadata="false" hidden-when-empty="true">
      <fr:frontmatter>
        <fr:authors />
        <fr:title text="Related">Related</fr:title>
      </fr:frontmatter>
      <fr:mainmatter>
        <fr:tree show-metadata="true" expanded="false" toc="false" numbered="false">
          <fr:frontmatter>
            <fr:authors>
              <fr:author>
                <fr:link href="/forest/trebor/" title="Trebor" uri="https://trebor-huang.github.io/forest/trebor/" display-uri="trebor" type="local">Trebor</fr:link>
              </fr:author>
            </fr:authors>
            <fr:date>
              <fr:year>2026</fr:year>
              <fr:month>6</fr:month>
              <fr:day>14</fr:day>
            </fr:date>
            <fr:uri>https://trebor-huang.github.io/forest/trebor-0003/</fr:uri>
            <fr:display-uri>trebor-0003</fr:display-uri>
            <fr:route>/forest/trebor-0003/</fr:route>
            <fr:title text="List of open problems">List of open problems</fr:title>
          </fr:frontmatter>
          <fr:mainmatter><html:p>
  The following is a list of open (to my knowledge) problems that I’m interested in, with some thoughts on them. They are mostly in type theory, constructive logic and computability theory. I think about them from time to time, and if any problem is already solved in the literature, or has a new claimed solution, please contact <fr:link href="/forest/trebor/" title="Trebor" uri="https://trebor-huang.github.io/forest/trebor/" display-uri="trebor" type="local">me</fr:link>!
</html:p>
  
  
  <fr:tree show-metadata="false" expanded="false" numbered="false"><fr:frontmatter><fr:authors><fr:author><fr:link href="/forest/trebor/" title="Trebor" uri="https://trebor-huang.github.io/forest/trebor/" display-uri="trebor" type="local">Trebor</fr:link></fr:author></fr:authors><fr:date><fr:year>2026</fr:year><fr:month>6</fr:month><fr:day>14</fr:day></fr:date><fr:uri>https://trebor-huang.github.io/forest/open-0001/</fr:uri><fr:display-uri>open-0001</fr:display-uri><fr:route>/forest/open-0001/</fr:route><fr:title text="Strongly total functions on Church numerals">Strongly total functions on Church numerals</fr:title><fr:taxon>Question</fr:taxon></fr:frontmatter><fr:mainmatter><html:p>
  What are all the total functions <fr:tex display="inline"><![CDATA[f : \mathbb {N} \to  \mathbb {N}]]></fr:tex> on natural numbers such that there exists an untyped <fr:tex display="inline"><![CDATA[\lambda ]]></fr:tex>-calculus term <fr:tex display="inline"><![CDATA[t]]></fr:tex> such that <fr:tex display="inline"><![CDATA[t c_n]]></fr:tex> (where <fr:tex display="inline"><![CDATA[c_n]]></fr:tex> is the <fr:tex display="inline"><![CDATA[n]]></fr:tex>-th Church numeral) is strongly normalizing for each <fr:tex display="inline"><![CDATA[n]]></fr:tex>, and evaluates to <fr:tex display="inline"><![CDATA[c_{f(n)}]]></fr:tex>? This is raised on <fr:link href="https://mathoverflow.net/questions/295380/is-every-total-computable-function-definable-by-a-strongly-total-lambda-term" type="external">MathOverflow</fr:link>.
</html:p><html:p>
  In some sense, this is asking for a kind of limit on type systems that guarantee strong normalization. This class of total functions includes for example all the functions of type <fr:tex display="inline"><![CDATA[\mathbb {N} \to  \mathbb {N}]]></fr:tex> in system <fr:tex display="inline"><![CDATA[\mathrm {F}]]></fr:tex>, where <fr:tex display="inline"><![CDATA[\mathbb {N}]]></fr:tex> is encoded as <fr:tex display="inline"><![CDATA[\forall  \alpha . (\alpha  \to  \alpha ) \to  (\alpha  \to  \alpha )]]></fr:tex>. These are the functions provably total in second order Peano arithmetic. Similarly system <fr:tex display="inline"><![CDATA[\mathrm {F}\omega ]]></fr:tex> gives all the functions provably total in higher order logic. These are all we get out of the <fr:tex display="inline"><![CDATA[\lambda ]]></fr:tex>-cube.
</html:p><html:p>
  However, note that it’s not necessarily true that system <fr:tex display="inline"><![CDATA[\mathrm {F}]]></fr:tex> can only provide us with these functions. It is possible that a term <fr:tex display="inline"><![CDATA[t]]></fr:tex> has the property that each <fr:tex display="inline"><![CDATA[t c_n]]></fr:tex> is typable (hence strongly normalizing) in system <fr:tex display="inline"><![CDATA[\mathrm {F}]]></fr:tex>, but the types assigned to <fr:tex display="inline"><![CDATA[t]]></fr:tex> or <fr:tex display="inline"><![CDATA[c_n]]></fr:tex> depends on <fr:tex display="inline"><![CDATA[n]]></fr:tex>. I’m also interested to see if there are these wild total functions.
</html:p><html:p>
  Perhaps one direction of attack is to consider higher order logic equipped with stronger and stronger large cardinal axioms. We then somehow translate them to strongly normalizing type systems (with more and more universes).
</html:p></fr:mainmatter></fr:tree>
  <fr:tree show-metadata="false" expanded="false" numbered="false"><fr:frontmatter><fr:authors><fr:author><fr:link href="/forest/trebor/" title="Trebor" uri="https://trebor-huang.github.io/forest/trebor/" display-uri="trebor" type="local">Trebor</fr:link></fr:author></fr:authors><fr:date><fr:year>2026</fr:year><fr:month>6</fr:month><fr:day>14</fr:day></fr:date><fr:uri>https://trebor-huang.github.io/forest/open-0002/</fr:uri><fr:display-uri>open-0002</fr:display-uri><fr:route>/forest/open-0002/</fr:route><fr:title text="Dimensionlity of the rational number locale">Dimensionlity of the rational number locale</fr:title><fr:taxon>Question</fr:taxon></fr:frontmatter><fr:mainmatter><html:p>
  Classify the locales <fr:tex display="inline"><![CDATA[\mathbb {Q}^n]]></fr:tex> up to homeomorphism. This is raised on <fr:link href="https://mathoverflow.net/questions/495142/dimensionality-of-the-rational-numbers-locale" type="external">MathOverflow</fr:link>.
</html:p><html:p>
  It is well-known that <fr:tex display="inline"><![CDATA[\mathbb {Q}]]></fr:tex> is not homeomorphic to <fr:tex display="inline"><![CDATA[\mathbb {Q}^2]]></fr:tex> as locales, which is in stark contrast with topological spaces where <fr:tex display="inline"><![CDATA[\mathbb {Q}^n]]></fr:tex> are all homeomorphic. The proof is a delicate analysis on rectangles on the rational plane. Perhaps similar arguments can be carried out on higher dimensional spaces, but I haven’t given too much thought to it.
</html:p></fr:mainmatter></fr:tree>
  <fr:tree show-metadata="false" expanded="false" numbered="false"><fr:frontmatter><fr:authors><fr:author><fr:link href="/forest/trebor/" title="Trebor" uri="https://trebor-huang.github.io/forest/trebor/" display-uri="trebor" type="local">Trebor</fr:link></fr:author></fr:authors><fr:date><fr:year>2026</fr:year><fr:month>6</fr:month><fr:day>15</fr:day></fr:date><fr:uri>https://trebor-huang.github.io/forest/open-0003/</fr:uri><fr:display-uri>open-0003</fr:display-uri><fr:route>/forest/open-0003/</fr:route><fr:title text="\infty -categories in vanilla HoTT"><fr:tex display="inline"><![CDATA[\infty ]]></fr:tex>-categories in vanilla HoTT</fr:title><fr:taxon>Question</fr:taxon></fr:frontmatter><fr:mainmatter><html:p>
  Formalize, or prove the impossibility for a definition of <fr:tex display="inline"><![CDATA[(\infty , 1)]]></fr:tex>-categories in the style of synthetic homotopy theory in HoTT.
</html:p><html:p>
  Defining <fr:tex display="inline"><![CDATA[\infty ]]></fr:tex>-categories following the usual, classical definition in HoTT is generally considered unproblematic, and just a matter of effort. There has been various projects working towards this.
</html:p><html:p>
  A definition of <fr:tex display="inline"><![CDATA[\infty ]]></fr:tex>-categories synthetically should have the correct interpretation in the canonical model of HoTT in <fr:tex display="inline"><![CDATA[\infty ]]></fr:tex>-groupoids (or more concretely, simplicial sets), up to equivalence. We should also be able to extract the <fr:tex display="inline"><![CDATA[\hom ]]></fr:tex>-types, and define composition and the <fr:tex display="inline"><![CDATA[n]]></fr:tex>-associator for each concrete number <fr:tex display="inline"><![CDATA[n]]></fr:tex>. More generally, <fr:link href="https://drive.google.com/file/d/1lKaq7watGGl3xvjqw9qHjm6SDPFJ2-0o/view" type="external">the axioms</fr:link> developed by Cisinski and others should be provable.
</html:p><html:p>
  There has been various approaches to defining <fr:tex display="inline"><![CDATA[\infty ]]></fr:tex>-categories in <html:em>extensions</html:em> of HoTT. They generally correspond to the two styles of defining categories:
</html:p><html:ul><html:li>Defining <fr:tex display="inline"><![CDATA[\hom ]]></fr:tex>-sets as families of sets over the collection of objects. Generalizing to <fr:tex display="inline"><![CDATA[\infty ]]></fr:tex>-categories requires arbitrarily long chains of dependencies. This is the idea of the work of <fr:link href="https://arxiv.org/abs/2311.18781" type="external">displayed type theory</fr:link>.</html:li>
  <html:li>Defining the total collection of arrows, with two projections <fr:tex display="inline"><![CDATA[\operatorname {dom}]]></fr:tex> and <fr:tex display="inline"><![CDATA[\operatorname {cod}]]></fr:tex>. Generalizing to <fr:tex display="inline"><![CDATA[\infty ]]></fr:tex>-categories requires the definition of (semi-)simplicial spaces, which require an infinite tower of coherences between these projection maps. This leads to the work of <fr:link href="https://arxiv.org/abs/1705.03307" type="external">two-level type theory</fr:link>.</html:li></html:ul></fr:mainmatter></fr:tree>
  <fr:tree show-metadata="false" expanded="false" numbered="false"><fr:frontmatter><fr:authors><fr:author><fr:link href="/forest/trebor/" title="Trebor" uri="https://trebor-huang.github.io/forest/trebor/" display-uri="trebor" type="local">Trebor</fr:link></fr:author></fr:authors><fr:date><fr:year>2026</fr:year><fr:month>6</fr:month><fr:day>15</fr:day></fr:date><fr:uri>https://trebor-huang.github.io/forest/open-0004/</fr:uri><fr:display-uri>open-0004</fr:display-uri><fr:route>/forest/open-0004/</fr:route><fr:title text="The theory of presentable and accessible categories in type theory">The theory of presentable and accessible categories in type theory</fr:title><fr:taxon>Question</fr:taxon></fr:frontmatter><fr:mainmatter><html:p>
  Is it possible to develop the theory of presentable and accessible categories in a constructive (or even predicative) type theory? Barring this, how can we develop this theory in a type-theory idiomatic way?
</html:p><html:p>
  It is known that the classical theory of presentable and accessible categories heavily relies on the axiom of choice. There are several questions on MathOverflow on this topic:
</html:p><html:ul><html:li><fr:link href="https://mathoverflow.net/questions/459374/locally-presentable-and-accessible-categories-without-the-axiom-of-choice" type="external">Locally presentable and accessible categories without the axiom of choice?</fr:link></html:li>
  <html:li><fr:link href="https://mathoverflow.net/questions/512002/accessibility-of-small-categories-without-choice" type="external">Accessibility of small categories without choice</fr:link></html:li>
  <html:li><fr:link href="https://mathoverflow.net/questions/512250/obstructions-to-the-theory-of-locally-presentable-categories-without-choice" type="external">Obstructions to the theory of locally presentable categories without choice</fr:link></html:li></html:ul><html:p>
  We can avoid a lot of choice unique up to unique isomorphism in a univalent type theory. It may also be possible to redefine notions of size using an inductive-recursively defined Tarski universe. I suspect this to be easier to use than trying to develop a theory of cardinals.
</html:p></fr:mainmatter></fr:tree>
  <fr:tree show-metadata="false" expanded="false" numbered="false"><fr:frontmatter><fr:authors><fr:author><fr:link href="/forest/trebor/" title="Trebor" uri="https://trebor-huang.github.io/forest/trebor/" display-uri="trebor" type="local">Trebor</fr:link></fr:author></fr:authors><fr:date><fr:year>2026</fr:year><fr:month>6</fr:month><fr:day>15</fr:day></fr:date><fr:uri>https://trebor-huang.github.io/forest/open-0005/</fr:uri><fr:display-uri>open-0005</fr:display-uri><fr:route>/forest/open-0005/</fr:route><fr:title text="Recursively realizable one-variable formula in propositional logic">Recursively realizable one-variable formula in propositional logic</fr:title><fr:taxon>Question</fr:taxon></fr:frontmatter><fr:mainmatter><html:p>
  What are all the propositional formulas involving one propositional variable that are realizable with recursive functions? In other words, what propositions are true in the computable world?
</html:p><html:p>
  Constructive logic is realizable with computable functions, and so we can restrict our attention to the free Heyting algebra generated by one element, also known as the <fr:link href="https://commons.wikimedia.org/wiki/File:Rieger-Nishimura.svg" type="external">Rieger–Nishimura lattice</fr:link>, and asking if any proposition other than <fr:tex display="inline"><![CDATA[\top ]]></fr:tex> is realizable. According to this <fr:link href="https://www.jstor.org/stable/25470303" type="external">survey</fr:link>, although there are propositions unprovable in constructive logic but realizable computably, the existence of such one-variable propositions is still open.
</html:p></fr:mainmatter></fr:tree>
  <fr:tree show-metadata="false" expanded="false" numbered="false"><fr:frontmatter><fr:authors><fr:author><fr:link href="/forest/trebor/" title="Trebor" uri="https://trebor-huang.github.io/forest/trebor/" display-uri="trebor" type="local">Trebor</fr:link></fr:author></fr:authors><fr:date><fr:year>2026</fr:year><fr:month>6</fr:month><fr:day>15</fr:day></fr:date><fr:uri>https://trebor-huang.github.io/forest/open-0006/</fr:uri><fr:display-uri>open-0006</fr:display-uri><fr:route>/forest/open-0006/</fr:route><fr:title text="The orthogonal and unitary groups in synthetic homotopy theory">The orthogonal and unitary groups in synthetic homotopy theory</fr:title><fr:taxon>Question</fr:taxon></fr:frontmatter><fr:mainmatter><html:p>
  Define the orthogonal groups <fr:tex display="inline"><![CDATA[\mathrm {O}(n)]]></fr:tex> and the unitary groups <fr:tex display="inline"><![CDATA[\mathrm {U}(n)]]></fr:tex> in synthetic homotopy theory, together with their actions on the spheres of corresponding dimensions. Their deloopings as well as the direct limits <fr:tex display="inline"><![CDATA[\mathrm {O}]]></fr:tex>, <fr:tex display="inline"><![CDATA[\mathrm {BO}]]></fr:tex> etc. are also of interest. These definitions are necessary for the study of Bott periodicity, as well as the <fr:tex display="inline"><![CDATA[J]]></fr:tex>-homomorphism in the homotopy groups of spheres.
</html:p><html:p>
  There has been <fr:link href="https://www.davidjaz.com/Talks/DJM-Hottest-Dec-2023.pdf" type="external">work</fr:link> on defining the tangent unit sphere bundle of spheres. It is plausible that we can build on this construction to define the orthogonal group. It is however unclear how we would define the group operation. See also <fr:link href="https://www.math.uwo.ca/faculty/kapulkin/seminars/hottestfiles/Christensen-2024-04-11-HoTTEST.pdf" type="external">these slides</fr:link>.
</html:p></fr:mainmatter></fr:tree>
  <fr:tree show-metadata="false" expanded="false" numbered="false"><fr:frontmatter><fr:authors><fr:author><fr:link href="/forest/trebor/" title="Trebor" uri="https://trebor-huang.github.io/forest/trebor/" display-uri="trebor" type="local">Trebor</fr:link></fr:author></fr:authors><fr:date><fr:year>2026</fr:year><fr:month>6</fr:month><fr:day>15</fr:day></fr:date><fr:uri>https://trebor-huang.github.io/forest/open-0007/</fr:uri><fr:display-uri>open-0007</fr:display-uri><fr:route>/forest/open-0007/</fr:route><fr:title text="Meta-theory of complex inductive definitions">Meta-theory of complex inductive definitions</fr:title><fr:taxon>Question</fr:taxon></fr:frontmatter><fr:mainmatter><html:p>
  Specify a schema of inductive definitions that can handle arbitrary interleaving, nesting and dependency of induction and recursion. Prove or disprove the consistency, canonicity and normalization of these inductive definitions, as well as their compatibility with excluded middle, the axiom of choice and univalence.
</html:p><html:p>
  Agda is extremely permissive on the validity of inductive definitions, far surpassing any literature. The declaration and definitions can be arbitrarily interleaved, and later definitions can refer to previous declarations freely (subject to termination checking). The strict-positivity checking is an “open” condition, meaning that each new feature of the type theory adds to the possible inductive definitions. So a “closed” approach such as reducing inductive types to <fr:tex display="inline"><![CDATA[\mathsf {W}]]></fr:tex>-types seems inappropriate.
</html:p><html:p>
  Some of these inductive types have been found to be inconsistent, or incompatible with excluded middle or univalence. However, fixing these inconsistencies reactively is not an ideal solution. Given that a large portion of these definitions seems intuitive, it should be possible to establish at least their consistency relative to set theory with well-known large cardinal axioms. See also <fr:link href="https://proofassistants.stackexchange.com/questions/1981/what-are-the-complex-induction-patterns-supported-by-agda" type="external">this StackExchange question</fr:link>.
</html:p></fr:mainmatter></fr:tree>
  <fr:tree show-metadata="false" expanded="false" numbered="false"><fr:frontmatter><fr:authors><fr:author><fr:link href="/forest/trebor/" title="Trebor" uri="https://trebor-huang.github.io/forest/trebor/" display-uri="trebor" type="local">Trebor</fr:link></fr:author></fr:authors><fr:date><fr:year>2026</fr:year><fr:month>6</fr:month><fr:day>15</fr:day></fr:date><fr:uri>https://trebor-huang.github.io/forest/open-0008/</fr:uri><fr:display-uri>open-0008</fr:display-uri><fr:route>/forest/open-0008/</fr:route><fr:title text="Higher effective topos">Higher effective topos</fr:title><fr:taxon>Question</fr:taxon></fr:frontmatter><fr:mainmatter><html:p>
  Define an elementary <fr:tex display="inline"><![CDATA[\infty ]]></fr:tex>-topos version of the effective topos. In particular, the <fr:tex display="inline"><![CDATA[1]]></fr:tex>-truncated objects should recover exactly the effective topos.
</html:p><html:p>
  There has been a line of work defining and working with <fr:link href="https://arxiv.org/abs/2503.24279" type="external">the effective 2-topos</fr:link>. On the other hand, trying to directly define assemblies in cubical sets gives the <fr:link href="https://arxiv.org/abs/1803.06649" type="external">cubical assemblies</fr:link>, which unfortunately does not satisfy some principles that we expect of the effective topos, such as the Church thesis. There are <fr:link href="https://arxiv.org/abs/1905.03014" type="external">ways</fr:link> to fix this problem, but it is ad hoc and doesn’t seem to be satisfactory as an answer to the question.
</html:p></fr:mainmatter></fr:tree>
  <fr:tree show-metadata="false" expanded="false" numbered="false"><fr:frontmatter><fr:authors><fr:author><fr:link href="/forest/trebor/" title="Trebor" uri="https://trebor-huang.github.io/forest/trebor/" display-uri="trebor" type="local">Trebor</fr:link></fr:author></fr:authors><fr:date><fr:year>2026</fr:year><fr:month>6</fr:month><fr:day>15</fr:day></fr:date><fr:uri>https://trebor-huang.github.io/forest/open-0009/</fr:uri><fr:display-uri>open-0009</fr:display-uri><fr:route>/forest/open-0009/</fr:route><fr:title text="Computational interpretation of propositional resizing">Computational interpretation of propositional resizing</fr:title><fr:taxon>Question</fr:taxon></fr:frontmatter><fr:mainmatter><html:p>
  Give a computational interpretation of propositional resizing in homotopy type theory.
</html:p><html:p>
  A naïve approach does not work here, since the computation needs to somehow get stuck on the proof of propositionality. Otherwise, we can assume (falsely) that any type is a proposition, which allows us to replicate Russell’s paradox and produce non-terminating reduction in a false context. This is related to <fr:link href="/forest/open-0008/" title="Higher effective topos" uri="https://trebor-huang.github.io/forest/open-0008/" display-uri="open-0008" type="local">Question <fr:contextual-number uri="https://trebor-huang.github.io/forest/open-0008/" display-uri="open-0008" /></fr:link>.
</html:p></fr:mainmatter></fr:tree>
</fr:mainmatter>
        </fr:tree>
        <fr:tree show-metadata="true" expanded="false" toc="false" numbered="false">
          <fr:frontmatter>
            <fr:authors>
              <fr:author>
                <fr:link href="/forest/trebor/" title="Trebor" uri="https://trebor-huang.github.io/forest/trebor/" display-uri="trebor" type="local">Trebor</fr:link>
              </fr:author>
            </fr:authors>
            <fr:date>
              <fr:year>2024</fr:year>
              <fr:month>2</fr:month>
              <fr:day>16</fr:day>
            </fr:date>
            <fr:uri>https://trebor-huang.github.io/forest/trebor-0001/</fr:uri>
            <fr:display-uri>trebor-0001</fr:display-uri>
            <fr:route>/forest/trebor-0001/</fr:route>
            <fr:title text="Trebor’s forest">Trebor’s forest</fr:title>
          </fr:frontmatter>
          <fr:mainmatter>
            <html:p>
  This is my forest. Forests are <fr:link href="https://www.forester-notes.org/tfmt-000V" type="external">a way of organizing notes</fr:link>. Some of the contents here:
</html:p>
            <html:ul><html:li><fr:link href="/forest/tile-0001/" title="Generating aperiodic tilings with substitution systems" uri="https://trebor-huang.github.io/forest/tile-0001/" display-uri="tile-0001" type="local">Generating aperiodic tilings with substitution systems</fr:link></html:li>
  <html:li><fr:link href="/forest/hmlg-0001/" title="Homological Algebra" uri="https://trebor-huang.github.io/forest/hmlg-0001/" display-uri="hmlg-0001" type="local">Notes on homological algebra</fr:link></html:li>
  <html:li><fr:link href="/forest/hmlg-001K/" title="Effective homology" uri="https://trebor-huang.github.io/forest/hmlg-001K/" display-uri="hmlg-001K" type="local">Effective homology</fr:link></html:li>
  <html:li>Algebraic geometry (Under namespace <html:code>algm</html:code>, not organized)</html:li>
  <html:li><fr:link href="/forest/ualg-000H/" title="Beck monadicity theorem" uri="https://trebor-huang.github.io/forest/ualg-000H/" display-uri="ualg-000H" type="local">Beck monadicity theorem</fr:link></html:li>
  <html:li>On <fr:link href="/forest/hmlg-002Y/" title="Ghost and phantom maps" uri="https://trebor-huang.github.io/forest/hmlg-002Y/" display-uri="hmlg-002Y" type="local">Ghost and phantom maps</fr:link></html:li>
  <html:li><fr:link href="/forest/hmlg-0032/" title="Spectral sequence of a tower of fibrations" uri="https://trebor-huang.github.io/forest/hmlg-0032/" display-uri="hmlg-0032" type="local">Spectral sequence of a tower of fibrations</fr:link></html:li></html:ul>
            <html:p>
  On a computer, you can press Ctrl–K to search for trees.
</html:p>
            <fr:tree show-metadata="false">
              <fr:frontmatter>
                <fr:authors>
                  <fr:author>
                    <fr:link href="/forest/trebor/" title="Trebor" uri="https://trebor-huang.github.io/forest/trebor/" display-uri="trebor" type="local">Trebor</fr:link>
                  </fr:author>
                </fr:authors>
                <fr:date>
                  <fr:year>2024</fr:year>
                  <fr:month>3</fr:month>
                  <fr:day>4</fr:day>
                </fr:date>
                <fr:uri>https://trebor-huang.github.io/forest/trebor-0002/</fr:uri>
                <fr:display-uri>trebor-0002</fr:display-uri>
                <fr:route>/forest/trebor-0002/</fr:route>
                <fr:title text="Style of writing">Style of writing</fr:title>
              </fr:frontmatter>
              <fr:mainmatter>
                <html:p>
  I try to adhere to several principles when composing trees.
</html:p>
                <html:ul><html:li>
    If a definition or a lemma would present itself during a proof attempt, then do not introduce it until that part of the proof. The nature of forests makes this kind of organization more viable, as each definition is a tree by itself.
  </html:li>
  <html:li>
    If a part of a proof has an easy constructive phrasing, use it and avoid classical reasoning. But if it requires some complication, then the classical way is used.
  </html:li>
  <html:li>
    Avoid abstraction leaks. Even if A is defined as B, do not use them interchangeably. For instance, an ideal is defined as a subset of a ring satisfying certain conditions. But we will insist on writing ideals as numbers, for example saying <fr:tex display="inline"><![CDATA[\mathfrak {a} \mid  x]]></fr:tex> instead of <fr:tex display="inline"><![CDATA[x \in  \mathfrak {a}]]></fr:tex>. This is not too heretic, since algebraic number theory already uses this kind of notation. Similarly, although prime ideals correspond to points in <fr:tex display="inline"><![CDATA[\operatorname {Spec}(A)]]></fr:tex>, we do not identify them.
  </html:li>
  <html:li>
    Apply <fr:link href="https://ncatlab.org/nlab/show/biased+definition" type="external">unbiased terminology</fr:link> and <fr:link href="https://ncatlab.org/nlab/show/negative+thinking" type="external">negative thinking</fr:link>.
  </html:li></html:ul>
              </fr:mainmatter>
            </fr:tree>
          </fr:mainmatter>
        </fr:tree>
        <fr:tree show-metadata="true" expanded="false" toc="false" numbered="false">
          <fr:frontmatter>
            <fr:authors />
            <fr:uri>https://trebor-huang.github.io/forest/angiuli/</fr:uri>
            <fr:display-uri>angiuli</fr:display-uri>
            <fr:route>/forest/angiuli/</fr:route>
            <fr:title text="Carlo Angiuli">Carlo Angiuli</fr:title>
            <fr:taxon>Person</fr:taxon>
            <fr:meta name="institution">Indiana University, Bloomington</fr:meta>
            <fr:meta name="position">Assistant Professor</fr:meta>
            <fr:meta name="external">https://carloangiuli.com/</fr:meta>
          </fr:frontmatter>
          <fr:mainmatter />
        </fr:tree>
      </fr:mainmatter>
    </fr:tree>
    <fr:tree show-metadata="false" hidden-when-empty="true">
      <fr:frontmatter>
        <fr:authors />
        <fr:title text="Contributions">Contributions</fr:title>
      </fr:frontmatter>
      <fr:mainmatter>
        <fr:tree show-metadata="true" expanded="false" toc="false" numbered="false">
          <fr:frontmatter>
            <fr:authors>
              <fr:author>
                <fr:link href="/forest/trebor/" title="Trebor" uri="https://trebor-huang.github.io/forest/trebor/" display-uri="trebor" type="local">Trebor</fr:link>
              </fr:author>
            </fr:authors>
            <fr:date>
              <fr:year>2026</fr:year>
              <fr:month>3</fr:month>
              <fr:day>26</fr:day>
            </fr:date>
            <fr:uri>https://trebor-huang.github.io/forest/cubical-normal-form/</fr:uri>
            <fr:display-uri>cubical-normal-form</fr:display-uri>
            <fr:route>/forest/cubical-normal-form/</fr:route>
            <fr:title text="Normal forms in Cubical Type Theory">Normal forms in Cubical Type Theory</fr:title>
            <fr:taxon>Reference</fr:taxon>
            <fr:meta name="doi">10.48550/arXiv.2603.24923</fr:meta>
          </fr:frontmatter>
          <fr:mainmatter>
            <html:p>
  This note documents the specification of normal forms in cubical type theory. The definition is already present in the proof of normalization for cubical type theory, but we present it in a more traditional style explicitly for reference. 
</html:p>
          </fr:mainmatter>
        </fr:tree>
        <fr:tree show-metadata="true" expanded="false" toc="false" numbered="false">
          <fr:frontmatter>
            <fr:authors>
              <fr:author>
                <fr:link href="/forest/trebor/" title="Trebor" uri="https://trebor-huang.github.io/forest/trebor/" display-uri="trebor" type="local">Trebor</fr:link>
              </fr:author>
            </fr:authors>
            <fr:date>
              <fr:year>2025</fr:year>
              <fr:month>6</fr:month>
              <fr:day>21</fr:day>
            </fr:date>
            <fr:uri>https://trebor-huang.github.io/forest/exp-locale/</fr:uri>
            <fr:display-uri>exp-locale</fr:display-uri>
            <fr:route>/forest/exp-locale/</fr:route>
            <fr:title text="Exponentiable locales, revisited">Exponentiable locales, revisited</fr:title>
            <fr:taxon>Reference</fr:taxon>
            <fr:meta name="doi">10.48550/arXiv.2507.15579</fr:meta>
          </fr:frontmatter>
          <fr:mainmatter>
            <html:p>
  We give a moderately motivated exposition of exponentiable locales and the construction of exponentials in <fr:tex display="inline"><![CDATA[\textsf {Loc}]]></fr:tex>, without assuming prior knowledge of exponential topological spaces or continuous posets.
</html:p>
          </fr:mainmatter>
        </fr:tree>
        <fr:tree show-metadata="true" expanded="false" toc="false" numbered="false">
          <fr:frontmatter>
            <fr:authors>
              <fr:author>
                <fr:link href="/forest/trebor/" title="Trebor" uri="https://trebor-huang.github.io/forest/trebor/" display-uri="trebor" type="local">Trebor</fr:link>
              </fr:author>
            </fr:authors>
            <fr:date>
              <fr:year>2025</fr:year>
              <fr:month>5</fr:month>
              <fr:day>25</fr:day>
            </fr:date>
            <fr:uri>https://trebor-huang.github.io/forest/history/</fr:uri>
            <fr:display-uri>history</fr:display-uri>
            <fr:route>/forest/history/</fr:route>
            <fr:title text="History of Type Theory">History of Type Theory</fr:title>
            <fr:taxon>Reference</fr:taxon>
            <fr:meta name="external">https://github.com/Trebor-Huang/history</fr:meta>
          </fr:frontmatter>
          <fr:mainmatter />
        </fr:tree>
        <fr:tree show-metadata="true" expanded="false" toc="false" numbered="false">
          <fr:frontmatter>
            <fr:authors>
              <fr:author>
                <fr:link href="/forest/trebor/" title="Trebor" uri="https://trebor-huang.github.io/forest/trebor/" display-uri="trebor" type="local">Trebor</fr:link>
              </fr:author>
            </fr:authors>
            <fr:date>
              <fr:year>2023</fr:year>
              <fr:month>10</fr:month>
              <fr:day>3</fr:day>
            </fr:date>
            <fr:uri>https://trebor-huang.github.io/forest/stc-hard-way/</fr:uri>
            <fr:display-uri>stc-hard-way</fr:display-uri>
            <fr:route>/forest/stc-hard-way/</fr:route>
            <fr:title text="Synthetic Tait Computability the Hard Way">Synthetic Tait Computability the Hard Way</fr:title>
            <fr:taxon>Reference</fr:taxon>
            <fr:meta name="doi">10.48550/arXiv.2310.02051</fr:meta>
          </fr:frontmatter>
          <fr:mainmatter>
            <html:p>
  We walk through a few proofs of canonicity and normalization, each one with more aspects dissected and re-expressed in category theory, so that readers can compare the difference across proofs. During this process we isolate the different ideas that make up the proofs. Finally we arrive at synthetic Tait computability as proposed by J. Sterling. We also give a synthetic proof for parametricity of system F.
</html:p>
          </fr:mainmatter>
        </fr:tree>
        <fr:tree show-metadata="true" expanded="false" toc="false" numbered="false">
          <fr:frontmatter>
            <fr:authors>
              <fr:author>
                <fr:link href="/forest/trebor/" title="Trebor" uri="https://trebor-huang.github.io/forest/trebor/" display-uri="trebor" type="local">Trebor</fr:link>
              </fr:author>
            </fr:authors>
            <fr:uri>https://trebor-huang.github.io/forest/models/</fr:uri>
            <fr:display-uri>models</fr:display-uri>
            <fr:route>/forest/models/</fr:route>
            <fr:title text="Models of Dependent Type Theory">Models of Dependent Type Theory</fr:title>
            <fr:taxon>Reference</fr:taxon>
            <fr:meta name="external">https://github.com/Trebor-Huang/model</fr:meta>
          </fr:frontmatter>
          <fr:mainmatter />
        </fr:tree>
      </fr:mainmatter>
    </fr:tree>
  </fr:backmatter>
</fr:tree>
