George Zakhour

About Me

In August 2021 I joined the Programming Group at the University of St. Gallen, Switzerland as a PhD student where I'm supervised by Prof. Guido Salvaneschi.

Between 2017 and July 2021 I was an R&D software developer at Agilent Technologies (formerly Genohm) in Lausanne, Switzerland.

In June 2017 I got my master's in Computer science from the École polytechnique fédérale de Lausanne (EPFL) at the LAMP lab. In my thesis I simplified conceptually a polymorphic safe-and-precise effect system.

In 2015 I got my bachelor's in computer science and a minor in mathematics from the American University of Beirut (AUB). My project was to design and implement a functional quantum language.

I am an avid reader, my Goodreads profile lists all my non-technical interests (those outside of CS and math). I speak/read fluently three (natural) languages: English, French, and Arabic.

In my spare time, when I'm not reading or programming, I am either cycling or playing Go or the mandolin.

Academic Interests

  • Functional Programming Languages,
  • (Advanced Safe) Type Systems,
  • Software Verification, and
  • Theorem Proving.

Publications

  • George Zakhour, Pascal Weisenburger, and Guido Salvaneschi. 2024. Automated Verification of Fundamental Algebraic Laws. Proceedings of the ACM on Programming Languages 8, PLDI, Article 178, June 24–28, 2024, Copenhagen, Denmark. https://doi.org/10.1145/3656408 [author version]
  • George Zakhour, Pascal Weisenburger, and Guido Salvaneschi. 2023. Type-Safe Dynamic Placement with First-Class Placed Values. Proceedings of the ACM Programming Languages 7, OOPSLA2, Article 297 (October 2023), 29 pages. https://doi.org/10.1145/3622873 [author version]
  • George Zakhour, Pascal Weisenburger, and Guido Salvaneschi. 2023. Type-Checking CRDT Convergence. Proceedings of the ACM on Programming Languages 7, PLDI, Article 162, June 17–21, 2023, Orlando, Florida, United States. https://doi.org/10.1145/3591276 [author version]

I also published a satirical paper in SIGBOVIK'24.

What is this graph above?

This graph is a 69-state quantum Turing machine [PDF] which takes as input a quantum state |k,x⟩ in a 6-dimensional Hilbert space and runs the following algorithm on it:

x ∈ ℕ8
k ∈ ℕ8
while |x-k| < 4:
    x := x + 1   mod 8
This machine is significant to me because it exhibits conditional looping (as opposed to a statically-known bounded loop) which I could not find an example of in the literature (pre-2016).