<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" ><generator uri="https://jekyllrb.com/" version="3.10.0">Jekyll</generator><link href="rikheurter.github.io/feed.xml" rel="self" type="application/atom+xml" /><link href="rikheurter.github.io/" rel="alternate" type="text/html" /><updated>2026-09-11T16:13:42+00:00</updated><id>rikheurter.github.io/feed.xml</id><title type="html">Master thesis project QCS with Maris Ozols</title><subtitle>If you are on this page, then that most likely means you are my supervisor or possibly someone else affiliated to Lean and interested in formalisation. Anyway the goal of this site is to simply have some place to vent my thoughts on what I have read on/worked on which I then hopefully can introduce to my thesis, if at all useful to the story of my learning there.</subtitle><entry><title type="html">Starting the preparation of the thesis</title><link href="rikheurter.github.io/general/weekly/review/2026/09/11/welcome-to-jekyll.html" rel="alternate" type="text/html" title="Starting the preparation of the thesis" /><published>2026-09-11T00:00:00+00:00</published><updated>2026-09-11T00:00:00+00:00</updated><id>rikheurter.github.io/general/weekly/review/2026/09/11/welcome-to-jekyll</id><content type="html" xml:base="rikheurter.github.io/general/weekly/review/2026/09/11/welcome-to-jekyll.html"><![CDATA[<p>So for whomever is reading this page. This is my very first web page on which I will be recording my progress of my masterthesis and whatever problems I run into. I am specifically putting this on this web page with 3 different reasons:</p>
<ul>
  <li>I noticed during the writing of my bachelor thesis that it is rather nice to actually always inform my supervisors what I have been working on (I did it via e-mail that year);</li>
  <li>This time I might be working together with supervisor, but possibly also other researchers. Thus in order to also inform them on what I have been working on.</li>
  <li>To have a nice way to read back on what I had worked on at specific points, so that I can possibly show during the presentation of my master thesis what I was working on at what time. 
I will probably regret this decision later on, but for now it is more than a little nice to just jot down my (non-intrusive) thoughts.</li>
</ul>

<p>Anyway this week I have mostly started reading <a href="https://leanprover.zulipchat.com/#narrow/channel/508986-Quantum-information/topic/Quantum.20Computing.3A.20Organizing.20the.20community/with/619559617">this</a> thread on the lean zulipchat and of course setting up this thesis.</p>

<p>It was already nice to know that there are a bunch of people now that are interested in formalising some form of quantum computing algorithms in Lean and importantly, that this is also not a trivial task to do in a nice way: The trade-off between the most general case of infinite dimensional circuits versus the specific case of finite dimensional circuits is apparently big enough that it isn’t completely clear what the best choice here is.</p>

<p>Similarly it is to a certain extent sad that there is still no proper direction chosen on where, and how, to formalise quantum algorithm. Specifically to what extend we will try and put theorems “upstream” in physlib/mathlib versus in CSlib, which if I understand it correctly seems to be the home where we will actually work on the specific algorithms.</p>

<p>Also reading through some of the posts in the thread it was interesting to see that probably the best way to write these algorithms is using monads, just like is the “natural” way of writing stateful functional programming languages (which Lean belongs to). This was something I did expect, but still to see it in action is fun to say the least.</p>

<h2 id="to-end-after-having-written-my-first-blogpost-lets-get-to-talking-about-writing-my-thesis-or-more-aptly-what-boundaries-i-think-i-will-set-for-myself-at-first-i-wanted-to-look-into-using-agentic-ai-to-formalise-theorems-but-the-longer-i-am-considering-that-the-more-i-am-thinking-that-i-will-probably-not-like-that-compared-to-my-bachelor-thesis-wherein-probably-to-my-detriment-i-did-not-use-ai-in-anyway-whatsoever-i-will-at-least-plan-on-using-on-the-uvas-aichat-mostly-to-look-up-how-to-do-xy-or-z-in-lean-which-i-didnt-yet-know-about-i-think-i-am-very-much-at-the-stage-of-learning-lean-that-using-llms-for-look-up-is-moreso-to-get-introduced-to-new-methods-to-improveshorten-my-lean-code-than-letting-the-computer-solve-the-problems-for-me--it-will-be-sad-to-leave-my-ai-free-hermit-life-after-me-though-">To end, after having written my first blogpost let’s get to talking about writing my thesis, or more aptly what boundaries I think I will set for myself. At first I wanted to look into using agentic AI to formalise theorems, but the longer I am considering that the more I am thinking that I will probably not like that. Compared to my bachelor thesis wherein (probably to my detriment) I did not use AI in anyway whatsoever, I will at least plan on using on the UvA’s AIChat. Mostly to look up how to do x,y or z in Lean which I didn’t yet know about. I think I am very much at the stage of learning LEAN that using LLMs for look up is moreso to get introduced to new methods to improve/shorten my LEAN code than letting the computer solve the problems for me <sup id="fnref:1" role="doc-noteref"><a href="#fn:1" class="footnote" rel="footnote">1</a></sup>. It will be sad to leave my AI-free hermit life after me though :’(.</h2>

<!---You’ll find this post in your `_posts` directory. Go ahead and edit it and re-build the site to see your changes. You can rebuild the site in many different ways, but the most common way is to run `jekyll serve`, which launches a web server and auto-regenerates your site when a file is updated.

Jekyll requires blog post files to be named according to the following format:

`YEAR-MONTH-DAY-title.MARKUP`

Where `YEAR` is a four-digit number, `MONTH` and `DAY` are both two-digit numbers, and `MARKUP` is the file extension representing the format used in the file. After that, include the necessary front matter. Take a look at the source for this post to get an idea about how it works.

Jekyll also offers powerful support for code snippets:


<figure class="highlight"><pre><code class="language-ruby" data-lang="ruby"><span class="k">def</span> <span class="nf">print_hi</span><span class="p">(</span><span class="nb">name</span><span class="p">)</span>
  <span class="nb">puts</span> <span class="s2">"Hi, </span><span class="si">#{</span><span class="nb">name</span><span class="si">}</span><span class="s2">"</span>
<span class="k">end</span>
<span class="n">print_hi</span><span class="p">(</span><span class="s1">'Tom'</span><span class="p">)</span>
<span class="c1">#=&gt; prints 'Hi, Tom' to STDOUT.</span></code></pre></figure>


Check out the [Jekyll docs][jekyll-docs] for more info on how to get the most out of Jekyll. File all bugs/feature requests at [Jekyll’s GitHub repo][jekyll-gh]. If you have questions, you can ask them on [Jekyll Talk][jekyll-talk].

[jekyll-docs]: https://jekyllrb.com/docs/home
[jekyll-gh]:   https://github.com/jekyll/jekyll
[jekyll-talk]: https://talk.jekyllrb.com/
--->
<div class="footnotes" role="doc-endnotes">
  <ol>
    <li id="fn:1" role="doc-endnote">
      <p>At the very least I hope so. In my bachelor thesis’ code I wrote down wayyyy too many <code class="language-plaintext highlighter-rouge">apply?</code> to get possibly further + using the creation of a lot of short rewrite hypothesis and then using simp. At least after having learned <code class="language-plaintext highlighter-rouge">show_term</code> I now know how to already clean up a lot of this code. <a href="#fnref:1" class="reversefootnote" role="doc-backlink">&#8617;</a></p>
    </li>
  </ol>
</div>]]></content><author><name></name></author><category term="General" /><category term="weekly" /><category term="review" /><summary type="html"><![CDATA[So for whomever is reading this page. This is my very first web page on which I will be recording my progress of my masterthesis and whatever problems I run into. I am specifically putting this on this web page with 3 different reasons: I noticed during the writing of my bachelor thesis that it is rather nice to actually always inform my supervisors what I have been working on (I did it via e-mail that year); This time I might be working together with supervisor, but possibly also other researchers. Thus in order to also inform them on what I have been working on. To have a nice way to read back on what I had worked on at specific points, so that I can possibly show during the presentation of my master thesis what I was working on at what time. I will probably regret this decision later on, but for now it is more than a little nice to just jot down my (non-intrusive) thoughts.]]></summary></entry></feed>