Pharaz Fadaei

Welcome! My name is Amir Mohammad (Pharaz) Fadaei Ayyam. I am a masters student in the Distributed and Multi-Agent Systems Lab (DiSysLab) at Sharif University of Technology. My interests lie in programming languages, formal methods and computer systems. Currently, I am focused on my master’s thesis, which aims to create a framework for ensuring that computer programs do what they are supposed to do. Instead of relying on traditional testing, this framework is based on logic and formal methods, through which program correctness can be proved rigorously.

Recently, I have primarily been using Coq and Rust. Coq, a proof assistant, plays a central role in my research, while I use Rust primarily for implementing course projects and toy projects. I am also involved with the theory of programming languages. I find it fascinating how mathematical concepts such as constructive logic, type theory, and category theory are connected to programming languages and computation in general. I plan to explore this connection further. Here’s one of my favourite quotes from Robert Harper (Type Theory Foundations 5.1):

“… It’s all computer science actually, okay so rather than computer science being some corner of applied math maybe, it’s the other way around that math is actually some corner of computer science.”

Previously, I worked as a .NET developer, mostly working on personal desktop and web projects, my Phork.Blazor.Reactivity library is the only published one (has been downloaded almost 9000 times on NuGet). I am experienced in a wide range of .NET technologies, including WPF, UWP/WinUI, ASP.NET, and Xamarin/MAUI. At one point, I took on a role as a backend develpoer for a company in the travel industry. However, I quickly found the industry work quite repetitive and lacking in challenges. This experience was one of the key factors in my decision to pursue further education.

If I manage to survive the epic battle between my perfectionism and procrastination, I will write some blog posts (a feat I’ve achieved only twice so far)! Feel free to read them. You can also download my CV.

If you have any questions or want to talk about any of the keywords discussed here, please reach out.

My Name

My last name is Fadaei Ayyam and I have two different first names: Amir Mohammad and Pharaz! Due to some traditions in Iran, some parents may decide to pick two different names for their children; a legal one and an informal one. The legal name appears on the identity documents and is used in legal environments. The informal name is used to refer to the person by family and friends. I guess these traditions have roots in the Arab conquest of Persia and the prohibition of choosing Persian names for the children! My official first name is Amir Mohammad which is an Arabic name and my informal name is Pharaz that is a Persian name. The common spelling of Pharaz is Faraz. I decided to write it as Pharaz since the pharaz.com domain was available at that time! In Persian (the language of Iran), Pharaz means the highest and the topmost part of something, the maximum point. It’s close in meaning to the latin name Maximilian. It also appears to have a meaning of gold in the Adûnaic fictional language.