Pooya Taherkhani

Table of Contents

About me

Hi, I am Pooya! I have a strong background in mathematics and problem solving as well as in computation and programming.

I have programmed in Python, R, C++, C, Java, and Lisp, among others. On this page, you can find samples of my mathematical proof writing and code.

I have a diverse background in Computer Science, Mathematics, and Physics. To me, the fields are more connected to each other than it may appear.

Education

I took extensive graduate-level courses in the two fields of Computer Science and Industrial and Systems Engineering at Ohio University.

I also took extensive graduate-level courses in Aersopace Engineering with a focus on Flight Dynamics and Control at Sharif University of Technology.

I have a Bachelor of Science degree in Aersopace Engineering from Sharif.

Writings and code

Wholly slope! Slope of a secant of a polynomial—the discrete case!

Here I present a mathematical proof that I wrote while working with a team of kind and knowledgable math teachers who sparked the core idea and gave me a hint or two toward the proof!

This is a proof of the fact that the slope of a line connecting two integer points on the graph of a univariate polynomial with integer coefficients is itself an integer. This is not a trivial fact, although it might seem like it.

Iterative \( n \)-queens

Here I present my iterative solution to the famous \( n \)-queens problem. I haven't seen an iterative solution anywhere else. It is not trivial to come up with one, so much as that even some heavy-weight computer scientists have settled for publishing an iterative version that solves the problem only for a fixed value of \( n \), say \( n = 4 \). You can see the implementation of my solution in Python and C here.

Classical machine learning—some proofs and code

Here I have presented a few proofs about classical machine learning algorithms, such as perceptron, support vector machines, and their kernelized versions. I have then applied these methods to the classical problem of recognizing digits from images. The accompanying code is here; written in R, Python, C++, and Bash.

Vectorized proof on regularized linear regression

Here I wrote a relatively long proof involving vector calculus for a modified error measure of regularized linear regression. Here I implemented the derived vectorized error measure to fit a polynomial curve to given data. Vector formulas have the advantage of running fast on numerical software (such as R, NumPy, MATLAB, etc.). The implementation is in R.

More machine learning proofs

Here I wrote a few proofs on machine learning methods, such as the kernel technique, \( k \)-nearest neighbors, support vector machines for regression, and optimiztion.

Multithreaded bounding box

This is a program that I wrote to draw bounding boxes around objects in an image. Here I have described the neat object-oriented design of the program, which I really enjoyed developing. As an added bonus, I made the program run faster using multiple threads. Here you can see the code written in C. The program was developed in C to use the pthread library for multithreading.

Although C is not an object-oriented language, but nothing stops a good programmer to follow the design patterns to define abstract data types composed of other abstract data types, which makes for a smoother development process, and results in a more manageble program.

Program design

I wrote two programs to showcase my program design skills. Both programs process and analyze a relarively large dataset, without utilizing ready-to-use data analysis libraries. One is called border analytics and the other is purchase analytics. Both are written in Python by following the design patterns, to the extent possible, to create neat, manageble programs.

Calculate trigonometric functions on the unit circle—a tutorial

Here is a tutorial that I wrote while tutoring some calculus students who needed to brush up on their trigonometry skills. Although basic, you might enjoy my presentation of the geometric definition of tangent and cotangent functions, as well as the definition of \( \pi \) and radian.

English language skills

I am fluent in English. I scored 110 out of 120 in TOEFL in 2025. My score breakdown is

  • 29 out of 30 in reading,
  • 29 out of 30 in listening,
  • 25 out of 30 in speaking, and
  • 27 out of 30 in writing,

all of which is marked as advanced skill level according to my test report.

Curriculum Vitae

Picture

Email: pooyat@protonmail.com

Created using Emacs and Org mode