Overview of Temporal Reasoning

Temporal reasoning is the ability to infer values for policy model attributes that change over time. Rules written in Policy Modeling are time-aware and operate simultaneously for specific points in time (for example, the time at which you run an investigation, or some specific point in the past or future), as well as across time periods (for example, 'in the last three months', or 'until the person's 18th birthday').

Tip: Temporal reasoning is demonstrated in the Retail Discounts example project that is installed with Policy Modeling.

An inherent property of every attribute is its value at a point in time. That is, when you view a value (for example, using the Debugger or in an explanation), you are only seeing the value of the attribute at a particular point in time (for example, the current time, or 'the date of the investigation'). That value may change depending on when we look at it. Policy Modeling allows you to write rules that reach conclusions based not only on values as they exist at a particular instant, but also based on how that value changes over time.

There are two ways in which a policy model conclusion may change over time.

The first way is where the outcome of the rule changes based solely on time. In this case, a conclusion can change even though the values of the conditions of the rule have not. For instance, take a simple rule which infers whether a person can obtain a driver license:

the person can obtain a driver license if

the person has passed a driving test and

the person's age >= 16

Imagine that we ran an investigation using this policy model in 2016, and provided the information that the person had passed a driving test and was born on 1 January 2002. The policy model would infer that the person can not obtain a driver license, as they would not be 16 years of age. However, if we saved that interview and reopened it two years later (in 2018), it would immediately tell us that the person can obtain a driver license, because they would be 16 years old. The interview was not altered, that is, no new information has been given, and no existing information has been changed. Yet the value of some attributes have changed, due solely to the lapse of time.

The second way in which conclusions might change over time is where the data that proves a goal itself changes. For instance, the interest rate of a bank account, or a legislatively-mandated amount of pension can change. Consequently, other attributes that depend on this changeable data (for example, the monthly amount of interest, the total pension payable) will also inherit different values as time passes. This differs from the age-based example above, because in this case, it is the change of information over time that dictates how the outcome value changes, not merely the passage of time by itself.

Temporal reasoning provides:

  • A simple way of representing data for a period, over which a calculation can then be made (for example, over a financial year or over the last three months).
  • A simple way of showing the results of these calculations, identifying the rates or rules applied to each time period and aggregating these into a total amount for the period.
  • The capacity to readily change the rules and reference data and measure the impact of that change on those affected by the rule change.