65 of the Computer Science glossary’s terms, each with the part of the syllabus where you first meet it.
The rule that ANDing or ORing a variable with itself gives the same variable: and .
The name a programmer gives to a variable, constant, subprogram or class so that it can be referred to in code.
The rule that ANDing a variable with 1, or ORing it with 0, leaves it unchanged: and .
The number of pixels in an image, usually given as width × height.
The property of a value that cannot be changed after it is created, so any change produces a new value instead.
A programming language in which the programmer writes the sequence of steps, such as assignments, loops and selections, that the computer carries out in order.
Values that are recorded in inconsistent or unusable forms, such as mixed date formats, mixed units, inconsistent spelling or capitals, or numbers stored as text.
Handling missing data by replacing each missing value with an estimate, such as the mean, median or mode of the feature, or the previous value in a time series.
A database that keeps its data in main memory (RAM) rather than on disk, giving very low latency for reads and writes.
The node that comes immediately after a given node in an in-order traversal; for a node with a right subtree, it is the smallest value in that right subtree.
A traversal of a binary tree that visits the left subtree, then the node itself, then the right subtree, applied recursively at every node.
An algorithm that transforms its data within the memory the data already occupies, using only a constant amount of extra memory, .
Values that are present but do not match reality, such as impossible values, values that break a rule of their field, or values that contradict other fields in the same record.
The input variable in a model, whose values are used to predict another variable; also called the predictor.
A number that identifies the position of an item in a string or other sequence, counting from 0 for the first item.
The process of recreating an index from the current data, or reorganising its pages, so that it is compact and in order again after many changes to the table.
The freedoms and protections each person is entitled to, such as privacy, freedom of expression, equal treatment and due process, including how these apply to digital technology and data.
The use of a trained model to produce an output, such as a prediction or classification, for new input data that the model has not seen before.
A loop whose terminating condition is never met, so it repeats without end until the program is stopped from outside.
The reduction in entropy (a measure of how mixed the classes are) achieved by splitting a node on a feature; the split with the highest information gain is chosen.
The principle that a class keeps its data and implementation details inaccessible to other code, which can use the object only through the methods the class chooses to make public.
A cloud service model in which the provider supplies virtualised computing resources (virtual machines, storage and networking), and the customer installs and manages the operating system, runtime, applications and data.
The mechanism by which a new class is defined from an existing class, automatically gaining its attributes and methods and adding or changing some of its own.
The first layer of a neural network, which receives the input features, one neuron per feature, and passes them to the next layer.
A description of the data a solution receives: what each item is, where it comes from, its data type, its format and its range of valid values.
The parallelogram-shaped flowchart symbol for data entering the algorithm (input) or results leaving it (output).
A network protocol that sends data, including login details, without encryption or without checking the identity of the other party, so that it can be read or altered in transit.
A fault in a poorly designed table where a fact cannot be recorded without also recording an unrelated fact, because part of the primary key would otherwise be empty.
An object considered as a member of the class it was created from.
A method that is called on a particular object and can read and change that object's instance variables through its self reference.
An attribute of which each object holds its own separate copy, so that its value can differ from object to object.
The process of creating a new object from a class, which allocates memory for the object and runs its constructor.
A register that holds the instruction currently being decoded and executed.
A data type for whole numbers, positive, negative or zero, with no fractional part.
Division that gives only the whole-number part of the quotient and discards the remainder.
Data combined from several sources and converted into consistent formats, names, codes and units, so that the same fact is represented the same way whatever its source.
A software application that brings together the tools for writing, running and debugging programs, such as a code editor, a translator and a debugger.
Testing components of a product together, through their real connections, to check that data passes correctly between them and the combined behaviour is right.
A rule stored in the database schema that the DBMS checks on every insert, update and delete, rejecting any change that would break it.
In a regression equation, the predicted value of the dependent variable when the independent variable is zero.
A named set of method declarations, with no instance variables, that a class promises to implement in full, so objects of unrelated classes can be used through the same methods.
The coursework component of IB Computer Science, in which a student specifies a problem of their own choosing, then plans, designs, codes, tests and evaluates a software product that solves it, documenting each stage against five criteria.
The global system of interconnected computer networks that exchange data using the TCP/IP family of protocols.
The TCP/IP layer that gives each host a logical IP address and moves packets from the source host to the destination host across any number of networks, with routers choosing the path.
Everyday physical objects fitted with processors, sensors and network connections so that they can collect and exchange data without a person operating them.
The protocol at the internet layer of the TCP/IP model that gives each host a logical address and carries data between hosts, across any number of networks, as independently addressed packets.
An organisation that connects its customers' devices and networks to the internet, usually for a fee.
The degree to which a person can understand how a model reaches its predictions.
A translator that analyses and executes a program one statement (or instruction) at a time while it runs, without producing a separate machine-code file.
The difference between the upper quartile and the lower quartile of a set of values, , which measures the spread of the middle 50% of the data.
A signal from a device or program to the CPU indicating that an event needs immediate attention, causing the CPU to suspend its current task and run code that handles the event.
A short routine, usually part of the operating system or a device driver, that the CPU runs in response to a particular interrupt in order to deal with the event that caused it.
The set of elements that are in both of two sets; written .
A system that monitors network traffic or device activity for signs of attack and alerts administrators, without blocking the traffic itself.
A system placed in the path of network traffic that detects signs of attack and blocks or drops the malicious traffic automatically.
A logical numeric address, assigned by software, that identifies a network interface on an IP network and the network it belongs to.
Version 4 of the Internet Protocol, which uses 32-bit addresses written in dotted decimal notation as four numbers from 0 to 255.
The depletion of the pool of unallocated IPv4 addresses, so that new devices and networks can no longer be given new public IPv4 addresses freely.
Version 6 of the Internet Protocol, which uses 128-bit addresses written as eight groups of four hexadecimal digits separated by colons.
Records outside the population a model is meant for, or fields that carry no useful information about what the model must predict.
The relationship between a subclass and its superclass, in which every object of the subclass is also an object of the superclass.
An operation on a stack or queue that returns true if it holds no items and false otherwise.
The property that concurrent transactions do not see each other's unfinished changes, so the result is the same as if the transactions had run one after another.
A set of one or more items that may occur together in a record.
The control structure in which a block of instructions is repeated, either a set number of times or while a condition remains true.