ArticleslgStudy

mathematics

Strict function

Strict function is a mathematics topic covered in the lgStudy science library. This page brings together a partial reference excerpt, illustrations, worked examples, real-world applications and a short study plan, so you can understand Strict function rather than just read about it. In short: In computer science and computer programming, a function f is said to be strict if, when applied to a non-terminating expression, it also fails to terminate. A strict function in the denotational semantics of programming languages is a function f where f ( ⊥ ) =⊥ {\displaystyle f\left(\perp \right)=\perp } .

Key takeaways

  • Strict function belongs to mathematics; place it in that map before memorising details.
  • Learn the definition first, then one example that makes the definition concrete.
  • Connect Strict function to a quantity you can measure, compute or draw — that is where exam questions come from.
  • Reproduce the core statement of Strict function from memory before moving on to harder problems.

Reference excerpt

In computer science and computer programming, a function f is said to be strict if, when applied to a non-terminating expression, it also fails to terminate. A strict function in the denotational semantics of programming languages is a function f where f ( ⊥ ) =⊥ {\displaystyle f\left(\perp \right)=\perp } . The entity ⊥ {\displaystyle \perp } , called bottom, denotes an expression that does not return a normal value, either because it loops endlessly or because it aborts due to an error such as division by zero. A function that is not strict is called non-strict. A strict programming language is one in which user-defined functions are always strict. Intuitively, non-strict functions correspond to control structures. Operationally, a strict function is one that always evaluates its argument; a non-strict function is one that might not evaluate some of its arguments. Functions having more than one parameter can be strict or non-strict in each parameter independently, as well as jointly strict in several parameters simultaneously. As an example, the if-then-else expression of many programming languages, called ?: in languages inspired by C, may be thought of as a function of three parameters. This function is strict in its first parameter, since the function must know whether its first argument evaluates to true or to false before it can return; but it is non-strict in its second parameter, because (for example) if(false, ⊥ {\displaystyle \perp } ,1) = 1, as well as non-strict in its third parameter, because (for example) if(true,2, ⊥ {\displaystyle \perp } ) = 2. However, it is jointly strict in its second and third parameters, since if(true, ⊥ {\displaystyle \perp } , ⊥ {\displaystyle \perp } ) = ⊥ {\displaystyle \perp } and if(false, ⊥ {\displaystyle \perp } , ⊥ {\displaystyle \perp } ) = ⊥ {\displaystyle \perp } . In a non-strict functional programming language, strictness analysis refers to any algorithm used to prove the strictness of a function with respect to one or more of its arguments. Such functions can be compiled to a more efficient calling convention, such as call by value, without changing the meaning of the enclosing program.

See also Eager evaluation Lazy evaluation Short-circuit evaluation

References

Worked examples

Example 1 — a first encounter with Strict function

Start with the simplest possible case. Write down what Strict function claims or describes in one sentence, then invent the smallest concrete situation in which that sentence is true. In mathematics, the smallest case is usually a single object, a single equation or a single measurement. Check that every symbol or term in your sentence has a meaning in that case.

Example 2 — changing one variable

Take the situation from Example 1 and change exactly one quantity: double it, halve it, or set it to zero. Predict what should happen to Strict function before you calculate. Comparing your prediction with the result is the fastest way to find out whether you understand the idea or only the words.

Example 3 — an exam-style question

Typical questions about Strict function ask you to (a) state it precisely, (b) apply it to given data, and (c) explain a limitation. Practise writing all three answers in under five minutes; the third part is what separates a full-mark answer from an average one.

Applications of Strict function

In research
Strict function appears in mathematics research whenever the underlying quantities have to be modelled precisely. Papers usually cite it as a starting assumption and then explore where it breaks down.
In technology and industry
Engineering practice reuses Strict function in design rules, simulations and safety margins. Knowing the idea lets you read a specification sheet and understand why the numbers look the way they do.
In the classroom
Strict function is common in secondary-school and first-year university syllabi. It links to neighbouring topics Denotational semantics, Evaluation strategy, Formal methods, so understanding it makes those chapters shorter.
In everyday life
Look for Strict function outside the textbook — in sport, cooking, traffic, electronics or the sky above you. An example you found yourself is remembered far longer than one you were given.

Affiliate

Preply — study more efficiently by working with a personal tutor. 50% off.

How to study Strict function in 20 minutes

  1. Read the reference excerpt below once, without taking notes.
  2. Close the page and write down what Strict function means in your own words.
  3. Compare your version with the excerpt and mark what you missed.
  4. Work through the three examples above with pen and paper.
  5. Explain Strict function out loud to somebody else — or to Teacher Smith in the lgStudy chat.

Frequently asked questions

What is Strict function in simple terms?

In computer science and computer programming, a function f is said to be strict if, when applied to a non-terminating expression, it also fails to terminate. A strict function in the denotational semantics of programming languages is a function f where f ( ⊥ ) =⊥ {\displaystyle f\left(\perp \right)…

Why does Strict function matter?

Because it connects several mathematics ideas at once: it gives you a definition you can apply, a quantity you can calculate, and a way to check whether a result is plausible.

How should I study Strict function?

Read the excerpt, restate it from memory, then work through the examples and applications listed on this page. The five-step study plan above takes about twenty minutes.

What does this page cover?

It gives you a compact reference excerpt plus original lgStudy explanations, examples, applications and study material on Strict function.

Tags

  • Denotational semantics
  • Evaluation strategy
  • Formal methods

Keep exploring