e.g., linear–nonlinear, homogeneous–heterogeneous,
stateful–stateless. For instance, linear structures or-
ganize items in one dimension (lists, stacks), compa-
red to the two or more hierarchies (trees, heaps) of
non-linear structures. Well-designed data structures
accelerate data storage and retrieval. The efficiency
of algorithms depends significantly on the selection
of a suitable data structure. Appropriate data struc-
tures can foster algorithm development. When the
effects are combined, performance and memory con-
sumption may range from poor to extremely efficient.
Chapter 14 highlights CS as an applied maths to-
pic. The foundational KAs concentrate on logic and
reasoning as the essences that a SW engineer in par-
ticular must internalize. The chapter describes mat-
hematics as a tool of studying formal systems, wi-
dely interpreted as abstractions on diverse applica-
tion domains. These abstractions are not restricted to
numbers only, but include, e.g., symbols, images, and
videos.
The following subtopics constitute the foundatio-
nal KAs of math. Our assumption is that the order
implicates their importance. We divide these topics
into continuous (c) and discrete (d):
1. Sets, Relations, and Functions (c/d)
2. Basic Logic (d)
3. Proof Techniques (d)
4. Basics of Counting (d)
5. Graphs and Trees (d)
6. Discrete Probability (d)
7. Finite State Machines (d)
8. Grammars (d)
9. Numerical Precision, Accuracy, and Errors (c)
10. Number Theory (d)
11. Algebraic Structures (d)
One obvious observation is a notably smaller por-
tion of continuous math compared to traditional engi-
neering education. In particular, calculus, differential
equations, and linear algebra are missing. Instead, se-
veral topics target a better position of underlying lo-
gic (2,3); and primers for data types, data structures
and algorithms (1,4,5,9,11). In addition, subtopics of
Basics of Counting (4), and Discrete Probability (6)
and Number Theory (10) scaffold a deeper understan-
ding of probability and cryptography. Numerical Pre-
cision, Accuracy, and Errors (9) section reveals un-
derlying HW and memory specifics that have an effect
on, e.g., the resolution of measurements and impossi-
bility of expressing most real numbers precisely.
3.3 K-12 Math and Computing Syllabi
of the UK and US
For comparison, we went through the National Cur-
riculum (UKNC) and General Certificate of Secon-
dary Education (UKGCSE) of the UK (Department of
Education, 2014; GCSE, 2015), and the Core Curri-
culum of US (USCC) (Core Standards Organization,
2015). The logic basics are present in the syllabi of
both, with a comprehensive subset. Yet Boolean logic
is currently included in the computing curriculum of
UKNC, not in math. However, Boolean logic would
fit well in the math syllabus as a consistent continuum
of inequalities.
Sets can illustrate nested number sets of natural
numbers (N), integers (Z), and reals (R) that match
with variable types (unsigned, int, float) in program-
ming. However, due to differences in how, e.g., reals
appear in both, we note that this juxtaposition is prone
to misconceptions. For instance, in:
i n t x = 1; f l o a t y=x / 2 ;
division may produce a value of zero depending on
the used language. All the same, not every int is a
float, in contradiction of the math subset relation of
Z R. In addition to primitive types, sets are the ba-
sic mathematical abstraction of containment, and are
thus relevant for programming as a cognitive tool. A
group of numbers may be introduced as a set, a vec-
tor or a matrix, and the same group operations apply.
Therefore, set theory would be useful in any mathe-
matics curriculum designed to support programming.
Currently, sets are a part of UKNC, but absent from
USCC and FNC-2014.
Linear algebra basics are included in the USCC
as matrices and basic operations; and as vectors and
transformations in UKNC, whereas they are missing
from the FNC-2014. For example, linear algebra ba-
sics could be a beneficial addition even if supported
by ACM-CS2013 only as an elective math topic, be-
cause matrices are extensively exploited in the fields
of statistics, data analysis, games, and graphics, for
instance. The need for matrices is increasing, because
of
topicality of their application areas and because
many libraries in, e.g., Python exploit them extensi-
vely. As a topic, matrices and vectors belong together,
and various transformations (such as scaling, transla-
tion, reflection and rotation) are main operations on
image manipulation and animations.
Matrices are extensively exploited, e.g., in ma-
chine learning, data analysis, pattern recognition, and
game engines for 2D/3D-transformations. All sugge-
sted math syllabus areas remain at the preliminary le-
Elementary Math to Close the Digital Skills Gap
157