diff --git a/05-cache/cache.tex b/05-cache/cache.tex
index cda9a11ce603fb39d53ab300a46accc793e8da17..c03d3c56a6b280e71c2b6fa938f9ebb6f60dd3cb 100644
--- a/05-cache/cache.tex
+++ b/05-cache/cache.tex
@@ -99,7 +99,7 @@ be stored at the same place in the internal memory. This is obviously optimal.
 
 A~cache-aware algorithm can use the same sequence of reads. Generally, we do not know
 the sequence of reads used by the optimal caching strategy, but any specific sequence
-can serve as an upper bound. For example the sequence we used in the I/O model.
+can serve as an upper bound. For example, the sequence we used in the I/O model.
 
 A~cache-oblivious algorithm cannot guarantee that the array will be aligned on
 a~block boundary (it does not know~$B$). In the worst case, this can cost us an extra