CIS 5450 Final Exam 2026-Quizzes with Correct
Answers
What does a p-value actually mean?
A p-value is: assuming the null hypothesis is true, the probability of seeing a result as extreme or
more extreme than what you observed.
Correct interpretation: "if the null were true, we'd see this result 39% of the time." Incorrect:
"there's only a 39% chance the null is true" or "there's a 61% chance the effect is real."
What does 1NF guarantee?
What does 2NF guarantee?
What does 3NF guarantee?
1NF — every cell holds one atomic value, every row is unique
2NF — every non-key column depends on the whole primary key, not part of it
3NF — every non-key column depends on the primary key directly, not through another non-key
column
What are the advantages and disadvantages of normalizing a relational schema to 3NF?
Give at least one practical benefit and one practical drawback.
Normalization to 3NF eliminates redundancy and update anomalies — if a piece of data exists in
only one place, updating it requires changing only one row. The practical drawback is query
performance: retrieving data that has been decomposed across many tables requires joins, which
are expensive. A denormalized schema may be faster to query at the cost of storing redundant
data and risking inconsistency on updates.
,Why is there no single tool that has both excellent performance and complete capabilities?
Use specific tools from the course to illustrate.
Performance is typically achieved by constraining what a tool can do. DuckDB is fast because it
compiles declarative SQL into optimized execution plans, uses parallelism, and avoids eager
execution — but this means it only accepts SQL and has a narrower API. Pandas accepts
arbitrary Python, supports pivoting, hierarchical grouping, and direct indexing, but executes
eagerly and single-threaded without a query optimizer. Supporting complete capabilities means a
tool cannot make the assumptions needed to optimize aggressively.
What is the difference between declarative and imperative data processing, and what is one
concrete consequence of each approach?
Declarative processing (e.g., SQL in DuckDB) specifies what result is desired; the system
determines how to compute it, enabling query optimization and operation reordering. Imperative
processing (e.g., Pandas) specifies how to compute the result step by step, and operations execute
in the order written. A consequence of declarative processing is that the optimizer may produce a
faster plan than the user would write. A consequence of imperative processing is that
inefficiencies in the user's code are always executed as written.
A colleague argues that because a table can be represented as a document, the concept of
data modalities is unnecessary. What is wrong with this argument?
While it is true that data can be converted between modalities, the modality in which data is
expressed affects how easily certain operations can be performed. Computing a column average
is straightforward on a table or array because the schema is rigid; doing the same on a document
requires additional parsing because documents lack a fixed schema. Data modalities are useful
,mental models for anticipating which operations will be natural or expensive — dismissing them
ignores these practical tradeoffs.
What is a functional dependency, and why does violating 3NF create problems in practice?
A functional dependency A → B means that knowing the value of A uniquely determines the
value of B. A schema violates 3NF when a non-key attribute is transitively dependent on the
primary key through another non-key attribute. In practice, this causes redundancy: the same fact
is stored in multiple rows, so an update requires changing every copy or risks leaving the
database in an inconsistent state (an update anomaly).
What is the difference between an inner join and a left outer join, and when would you
prefer one over the other?
An inner join returns only rows where the join condition is satisfied in both tables — unmatched
rows from either table are dropped. A left outer join returns all rows from the left table, filling in
NULLs for columns from the right table when no match exists. You prefer an inner join when
you only care about matched records. You prefer a left outer join when you need to preserve all
records from one table regardless of whether a match exists — for example, finding customers
who have placed no orders.
What is a regex, and what is one task where regex is more appropriate than a standard
equality filter, and one task where it is not?
A regex (regular expression) is a pattern language for matching strings based on structure rather
than exact value. It is more appropriate than equality when data follows a format that varies in
specific ways — for example, extracting all strings that look like email addresses or phone
numbers. It is less appropriate when you need exact matches on clean, structured data, since
, regex matching is slower and more complex to write and maintain than a simple equality
predicate.
A classmate runs a linear regression on 100,000 data points, gets an r² of 0.01, and a p-
value of less than 0.0001 for the slope coefficient. They conclude the model is highly
accurate. What is wrong with this interpretation?
The p-value and r² measure different things. A tiny p-value means the relationship is statistically
distinguishable from zero — with 100,000 data points, even a trivially small effect will be
detected. An r² of 0.01 means the model explains only 1% of the variance in the outcome, which
is practically useless for prediction. Statistical significance does not imply practical significance.
A correct interpretation: the relationship is real but too weak to be useful.
What does failing to reject the null hypothesis mean, and what does it not mean?
Failing to reject the null hypothesis means the data did not provide sufficient evidence to
conclude the effect exists at the chosen significance level. It does not mean the null hypothesis is
true or that no effect exists. The result may reflect low statistical power due to small sample size,
high variance, or a real but small effect. Absence of evidence is not evidence of absence.
What is the role of the significance level (e.g., α = 0.05) in hypothesis testing, and what is
the risk of setting it too low or too high?
The significance level is the threshold below which you reject the null hypothesis — it controls
the Type I error rate (false positive rate). Setting α too low (e.g., 0.001) reduces false positives
but increases Type II errors (missing real effects). Setting α too high (e.g., 0.5) makes it easy to
reject the null but increases the chance of declaring spurious effects real. The choice of α should
reflect the relative cost of each type of error in the application.
Answers
What does a p-value actually mean?
A p-value is: assuming the null hypothesis is true, the probability of seeing a result as extreme or
more extreme than what you observed.
Correct interpretation: "if the null were true, we'd see this result 39% of the time." Incorrect:
"there's only a 39% chance the null is true" or "there's a 61% chance the effect is real."
What does 1NF guarantee?
What does 2NF guarantee?
What does 3NF guarantee?
1NF — every cell holds one atomic value, every row is unique
2NF — every non-key column depends on the whole primary key, not part of it
3NF — every non-key column depends on the primary key directly, not through another non-key
column
What are the advantages and disadvantages of normalizing a relational schema to 3NF?
Give at least one practical benefit and one practical drawback.
Normalization to 3NF eliminates redundancy and update anomalies — if a piece of data exists in
only one place, updating it requires changing only one row. The practical drawback is query
performance: retrieving data that has been decomposed across many tables requires joins, which
are expensive. A denormalized schema may be faster to query at the cost of storing redundant
data and risking inconsistency on updates.
,Why is there no single tool that has both excellent performance and complete capabilities?
Use specific tools from the course to illustrate.
Performance is typically achieved by constraining what a tool can do. DuckDB is fast because it
compiles declarative SQL into optimized execution plans, uses parallelism, and avoids eager
execution — but this means it only accepts SQL and has a narrower API. Pandas accepts
arbitrary Python, supports pivoting, hierarchical grouping, and direct indexing, but executes
eagerly and single-threaded without a query optimizer. Supporting complete capabilities means a
tool cannot make the assumptions needed to optimize aggressively.
What is the difference between declarative and imperative data processing, and what is one
concrete consequence of each approach?
Declarative processing (e.g., SQL in DuckDB) specifies what result is desired; the system
determines how to compute it, enabling query optimization and operation reordering. Imperative
processing (e.g., Pandas) specifies how to compute the result step by step, and operations execute
in the order written. A consequence of declarative processing is that the optimizer may produce a
faster plan than the user would write. A consequence of imperative processing is that
inefficiencies in the user's code are always executed as written.
A colleague argues that because a table can be represented as a document, the concept of
data modalities is unnecessary. What is wrong with this argument?
While it is true that data can be converted between modalities, the modality in which data is
expressed affects how easily certain operations can be performed. Computing a column average
is straightforward on a table or array because the schema is rigid; doing the same on a document
requires additional parsing because documents lack a fixed schema. Data modalities are useful
,mental models for anticipating which operations will be natural or expensive — dismissing them
ignores these practical tradeoffs.
What is a functional dependency, and why does violating 3NF create problems in practice?
A functional dependency A → B means that knowing the value of A uniquely determines the
value of B. A schema violates 3NF when a non-key attribute is transitively dependent on the
primary key through another non-key attribute. In practice, this causes redundancy: the same fact
is stored in multiple rows, so an update requires changing every copy or risks leaving the
database in an inconsistent state (an update anomaly).
What is the difference between an inner join and a left outer join, and when would you
prefer one over the other?
An inner join returns only rows where the join condition is satisfied in both tables — unmatched
rows from either table are dropped. A left outer join returns all rows from the left table, filling in
NULLs for columns from the right table when no match exists. You prefer an inner join when
you only care about matched records. You prefer a left outer join when you need to preserve all
records from one table regardless of whether a match exists — for example, finding customers
who have placed no orders.
What is a regex, and what is one task where regex is more appropriate than a standard
equality filter, and one task where it is not?
A regex (regular expression) is a pattern language for matching strings based on structure rather
than exact value. It is more appropriate than equality when data follows a format that varies in
specific ways — for example, extracting all strings that look like email addresses or phone
numbers. It is less appropriate when you need exact matches on clean, structured data, since
, regex matching is slower and more complex to write and maintain than a simple equality
predicate.
A classmate runs a linear regression on 100,000 data points, gets an r² of 0.01, and a p-
value of less than 0.0001 for the slope coefficient. They conclude the model is highly
accurate. What is wrong with this interpretation?
The p-value and r² measure different things. A tiny p-value means the relationship is statistically
distinguishable from zero — with 100,000 data points, even a trivially small effect will be
detected. An r² of 0.01 means the model explains only 1% of the variance in the outcome, which
is practically useless for prediction. Statistical significance does not imply practical significance.
A correct interpretation: the relationship is real but too weak to be useful.
What does failing to reject the null hypothesis mean, and what does it not mean?
Failing to reject the null hypothesis means the data did not provide sufficient evidence to
conclude the effect exists at the chosen significance level. It does not mean the null hypothesis is
true or that no effect exists. The result may reflect low statistical power due to small sample size,
high variance, or a real but small effect. Absence of evidence is not evidence of absence.
What is the role of the significance level (e.g., α = 0.05) in hypothesis testing, and what is
the risk of setting it too low or too high?
The significance level is the threshold below which you reject the null hypothesis — it controls
the Type I error rate (false positive rate). Setting α too low (e.g., 0.001) reduces false positives
but increases Type II errors (missing real effects). Setting α too high (e.g., 0.5) makes it easy to
reject the null but increases the chance of declaring spurious effects real. The choice of α should
reflect the relative cost of each type of error in the application.