From db7c7a0bb4b96635737c4351d641aa87318865bf Mon Sep 17 00:00:00 2001
From: Aria Shrimpton <me@aria.rip>
Date: Tue, 19 Mar 2024 23:45:14 +0000
Subject: improve citation style & bibliography

---
 thesis/parts/design.tex | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

(limited to 'thesis/parts/design.tex')

diff --git a/thesis/parts/design.tex b/thesis/parts/design.tex
index 18efa9c..6d9c482 100644
--- a/thesis/parts/design.tex
+++ b/thesis/parts/design.tex
@@ -87,7 +87,7 @@ We now go into more detail on how each step works, although we leave some specif
 
 %% Explain role in entire process
 As described in Chapter \ref{chap:background}, any implementation we pick must satisfy the program's functional requirements.
-To do this, we integrate Primrose \parencite{qin_primrose_2023} as a first step.
+To do this, we integrate Primrose \citep{qin_primrose_2023} as a first step.
 
 Primrose allows users to specify both the traits they require in an implementation (essentially the API and methods available), and what properties must be satisfied.
 
@@ -126,7 +126,7 @@ Although we use primrose in our implementation, the rest of our system isn't dep
 \section{Cost Models}
 
 Now that we have a list of possible implementations, we need to understand the performance characteristics of each of them.
-We use an approach similar to CollectionSwitch\parencite{costa_collectionswitch_2018}, which assumes that the main factor in how long an operation takes is the current size of the collection.
+We use an approach similar to CollectionSwitch\citep{costa_collectionswitch_2018}, which assumes that the main factor in how long an operation takes is the current size of the collection.
 
 %% Benchmarks
 An implementation has a seperate cost model for each operation, which we obtain by executing the operation repeatedly on collections of various sizes.
@@ -199,7 +199,7 @@ But when the size of the container grows, the cost of doing \code{contains} may
 
 Adaptive containers attempt to address this need, by starting off with one implementation (the low or before implementation), and switching to a new implemenation (the high or after implementation) once the size of the container passes a certain threshold.
 
-This is similar to systems such as CoCo\parencite{hutchison_coco_2013} and in work by \"{O}sterlund\parencite{osterlund_dynamically_2013}.
+This is similar to systems such as CoCo\citep{hutchison_coco_2013} and in work by \"{O}sterlund\citep{osterlund_dynamically_2013}.
 However, we decide when to switch container implementation before the program is run, rather than as it is running.
 We also do so in a way that requires no knowledge of the implementation internals.
 
-- 
cgit v1.2.3

