Consultation on Changes to Solvency II Regulation – What’s Included?
May 2022


[1] Solvency II Review: Consultation – GOV.UK (www.gov.uk)
Functional Programming
April 2022

[1] This is a fact profound enough to warrant a footnote, even though it is not strictly relevant to the article. Colloquially, Gödel proved that any logical system capable of expressing arithmetic will contain some number of true statements which are unprovable. Whilst this is obviously consequential for mathematics and philosophy, it also less obviously puts constraints on the kinds of computer programs that can run in a finite number of steps.
[2] Machine code is the code which is expressed in terms that your computer can understand, and it’s not nice to read. Just as all legal programs can be translated to machine code, all legal functional programs can be translated to an extended form of the lambda calculus (which in turn can be translated to real machine code to run on your PC). Most languages, even functional ones, do not actually do this (opting to cut out the lambda calculus middleman), but it can be done in principle, and a few do take this approach. Regardless of how the computer “really” treats them, the lambda calculus is the theory that supports the grammar of such languages.
[3] This is a bit of a tautology – “computable” is typically taken to mean anything that a Turing Machine can do with infinite time and resources.
[4] Note that brackets don’t mean anything special, as they do for f(x) in standard function notation. They just indicate the precedence of function application.
[5] A word of advice for those who embark on this journey: although the pure lambda calculus does not provide arithmetic or numbers, it can be helpful to pretend they exist to test your intuition.
[6] Both examples are taken from the Haskell wiki. Rest assured, they have not deliberately made the C code look worse than it needs to be!
[7] This is one of the reasons that C is such a notoriously hard language to use – programmers can wreak all kinds of havoc with this power. But by the same token, expert C programmers are able to squeeze phenomenal performance out of their code.
[8] With a few notable exceptions, such as Java (which enforces OOP) and Haskell (which is necessarily purely functional). Some languages also just lack facilities that would make certain paradigms convenient. For example it is very difficult to do any sophisticated functional work in VBA.
[9] Excel formulas cannot save secret variables in some persistent location, nor can they cause side effects – they can just be evaluated, The Excel formula language is purely functional for this reason.
Cognitive Bias and the Actuary
March 2022

[i] https://www.verywellmind.com/what-is-a-cognitive-bias-2794963
[ii] Kahneman, D. (2011) Thinking, Fast and Slow. New York: Farrar, Straus and Giroux
[iii] Ariely, D. (2008) Predictably Irrational. London: HarperCollinsPublishers
[iv] IFoA. (2019), CM2 Financial Engineering and Loss Reserving: Core Reading
[v] Ibid
[vi] Ibid
[vii] https://www.psychologytoday.com/us/basics/halo-effect
[viii] Kahneman, D. (2011) Thinking, Fast and Slow. New York: Farrar, Straus and Giroux
[ix] IFoA. (2020), SP5 Investment and Finance Principles: Core Reading
Software Package Training at APR
February 2022

APR Exam Results September 2021
* “Total” pass rates give the overall (i.e. weighted average) pass rates. IFoA-wide and CAA-wide Total pass rates only include exams which APR students sat.
We hope that all our students had a chance to celebrate over the holidays and that our trend of excellent results continues into 2022 and beyond.
Imelda Barnes
January 2022
