Cognitive Reflection Test (CRT)

Frederick, Shane (2005). "Cognitive Reflection and Decision Making". Journal of Economic Perspectives. 19 (4): 25–42. https://www.aeaweb.org/articles?id=10.1257/089533005775196732.

hemlock_crt.crt

def hemlock_crt.crt(*items, page=False, require=False, shuffle=False) [source]

Parameters: *items : str

The names of CRT items. If no items are given, the standard 3-item CRT is used. See the full list of available items..

page : bool, default=False

Indicates that items should be in separate pages.

require : bool, default=False

Indicates that responses are required.

shuffle : bool, default=False

Indicates that items should be shuffled.

Returns: CRT items : list

List of hemlock.Question if not page, otherwise list of hemlock.Page.

hemlock_crt.register

def hemlock_crt.register(correct, intuitive, key=None) [source]

Register a new CRT item.

Parameters: correct :

The correct answer.

intuitive :

The intuitive answer.

key : str

Name of the CRT item.

Examples

from hemlock_crt import register

@register(correct=5., intuitive=10.)
def bat_ball():
    return Input(
        '''
        <p>A bat and a ball cost $1.10 in total. The bat costs $1 more
        than the ball.</p>
        <p>How many cents does the ball cost?</p>
        ''',
        var='CRT_BatBall', append='cents',
        type='number', min=0, max=110
    )