Programmers deal with recursion all the time. It's actually quite a nice concept, but not a lot of people use it because of the mystery associated with it. To be honest, there's no mystery as such! Sometimes, a problem is too complex to solve because it is too big. If we can break the problem … Continue reading What Is Tail Recursion?
Author: Prateek Joshi
What Is Pointer Casting?
We all know how important pointers are in C++. A pointer is basically an object that contains an address to a variable. We can use this address to access the value stored in that variable, and that variable is located somewhere in the memory. It's like how we use an address to locate someone in … Continue reading What Is Pointer Casting?
Elliptic Curve Cryptography: Part 4/4 – How Do We Use Elliptic Curves?
In the previous blog post, we discussed about elliptic curves and saw what they look like. We also looked at some of their special properties that enable it to be a good trapdoor function. But this is still very mathematical, right? The curves are great to look at and we understand general concept of elliptic curves, but … Continue reading Elliptic Curve Cryptography: Part 4/4 – How Do We Use Elliptic Curves?
Elliptic Curve Cryptography: Part 3/4 – What Is An Elliptic Curve?
In the previous blog post, we discussed why RSA will not be sufficient anymore. We looked at how machines are getting stronger, and that we cannot rely on factorization as our primary mathematical foundation. We also talked a bit about what we are looking for in our new system, and then said a quick hello to … Continue reading Elliptic Curve Cryptography: Part 3/4 – What Is An Elliptic Curve?
Elliptic Curve Cryptography: Part 2/4 – Why Do We Need It?
In our previous blog post, we discussed public key cryptography and how it works in general. The RSA is so powerful because it comes with rigorous mathematical proofs of security. The authors basically proved that breaking the system is equivalent to solving a very difficult mathematical problem. When we say "difficult", what it means is … Continue reading Elliptic Curve Cryptography: Part 2/4 – Why Do We Need It?
Elliptic Curve Cryptography: Part 1/4 – Why Should We Talk About It?
Elliptic curve cryptography is one of the most powerful techniques used in the field of modern cryptography. Just to be clear, elliptic curves have nothing to do with ellipses. I agree that the name can be slightly misleading, but once we discuss what elliptic curves are, it will become much clearer. So as you may have … Continue reading Elliptic Curve Cryptography: Part 1/4 – Why Should We Talk About It?
What’s The Use Of Function Pointers In C++?
When we talk about C++ programming, functions and pointers are very important. A function is basically a series of steps packaged into a nice unit. A pointer is an object that refers to a value stored in memory. So why not just combine them and create something really useful! Function pointer is exactly what you think … Continue reading What’s The Use Of Function Pointers In C++?
What Is A Markov Chain?
If you have studied probability theory, then you must have heard Markov's name. When we study probability and statistics, we tend to deal with independent trials. What this means is that if you conduct an experiment a lot of times, we assume that the outcome of one trial doesn't influence the outcome of the next … Continue reading What Is A Markov Chain?
What Is Manifold Learning?
Machine learning is being used extensively in fields like computer vision, natural language processing, and data mining. In many modern applications that are being built, we usually derive a classifier or a model from an extremely large data set. The accuracy of the training algorithms is directly proportional to the amount of data we have. … Continue reading What Is Manifold Learning?
The Concept Of Homogeneous Coordinates
People in computer vision and graphics deal with homogeneous coordinates on a very regular basis. They are actually a nice extension of standard three dimensional vectors and allow us to simplify various transforms and their computations. When I say "transformations", I am talking about all those special effects on the screen, and the corresponding movements … Continue reading The Concept Of Homogeneous Coordinates