diff --git a/.gitignore b/.gitignore
index e7b1e52..a817815 100644
--- a/.gitignore
+++ b/.gitignore
@@ -126,3 +126,10 @@ qasm3Parser.g4
.gitignore
config.json
+
+# LaTeX Builds
+*.aux
+*.fdb_latexmk
+*.fls
+*.log
+*.gz
diff --git a/README.md b/README.md
index bb93729..6a3ec11 100644
--- a/README.md
+++ b/README.md
@@ -29,7 +29,7 @@ Finally, apply a measurement gate to every qubit to convert the quantum data int
After this process, we obtain the following quantum circuit.
-
+
@@ -79,7 +79,7 @@ meas = measure q;
-
+
The general workflow of QuantumC is shown in the diagram above: write a QuantumC program, compile it with the frontend to produce OpenQASM, then run that OpenQASM code to a local simulator or a cloud quantum backend.
diff --git a/demos/random/README.md b/demos/random/README.md
index ea84090..4a3c399 100644
--- a/demos/random/README.md
+++ b/demos/random/README.md
@@ -1 +1,23 @@
# Quantum Random Number Generator
+
+## Algorithm Description
+
+This quantum algorithm generates a uniformly distributed random number.
+
+### Generating An Integer $n \in [a, b)$
+
+$$
+\begin{equation}
+ n = a + \left(\sum_{i=0}^{n-1} 2^ib_i \mod (b-a)\right)
+\end{equation}
+$$
+
+### Generating A Floating-Point $f \in [a, b]$
+
+$$
+\begin{equation}
+ f = a + \frac{b-a}{2^n-1} \sum_{i=0}^{n-1} 2^ib_i
+\end{equation}
+$$
+
+## Quantum Circuit Represenation
\ No newline at end of file
diff --git a/figures/random/figure_1.pdf b/figures/random/figure_1.pdf
new file mode 100644
index 0000000..9a3341d
Binary files /dev/null and b/figures/random/figure_1.pdf differ
diff --git a/figures/random/figure_1.tex b/figures/random/figure_1.tex
new file mode 100644
index 0000000..8590c46
--- /dev/null
+++ b/figures/random/figure_1.tex
@@ -0,0 +1,14 @@
+\documentclass{article}
+
+\usepackage{amsmath}
+\usepackage{tikz}
+\usetikzlibrary{quantikz2}
+
+\begin{document}
+ \begin{quantikz}
+ \lstick{$\ket{0}$} \slice{$\ket{0}^{\otimes{n}}$} & \gate{H} \slice{$\ket{+}^{\otimes{n}}$} & \meter{} \\
+ \lstick{$\ket{0}$} & \gate{H} & \meter{} \\
+ \wave & & \\
+ \lstick{$\ket{0}$} & \gate{H} & \meter{}
+ \end{quantikz}
+\end{document}
diff --git a/figures/readme_figure_1.png b/figures/readme/figure_1.png
similarity index 100%
rename from figures/readme_figure_1.png
rename to figures/readme/figure_1.png
diff --git a/figures/readme_figure_2.png b/figures/readme/figure_2.png
similarity index 100%
rename from figures/readme_figure_2.png
rename to figures/readme/figure_2.png
diff --git a/figures/src/readme_figure_1.py b/figures/readme/src/figure_1.py
similarity index 100%
rename from figures/src/readme_figure_1.py
rename to figures/readme/src/figure_1.py