The baffling CS notions of "as-if" and "don't-care"

  • Authors:
  • David Ginat

  • Affiliations:
  • Tel-Aviv University, Tel-Aviv, Israel

  • Venue:
  • Proceedings of the 41st ACM technical symposium on Computer science education
  • Year:
  • 2010

Quantified Score

Hi-index 0.01

Visualization

Abstract

The notions of "as if" and "don't care" are essential notions in computational thinking. The former appears in the reformulation of tasks, reduction between tasks, auxiliary variables, and more. The latter is the core of non-determinism, asynchronous execution, and arbitrary choices in deterministic algorithms. The two notions are not intuitive, and require abstraction. We expect computer science (CS) graduates, who developed computational thinking during their studies, to demonstrate comprehension of these notions. Unfortunately, this may not be the case. In this paper we present a study of CS graduates, which reveals difficulties of limited comprehension and acceptance of these notions. We characterize the difficulties, relate them to cognitive aspects of abstraction, and offer some didactic suggestions.