Just to inform; I use the report function when going up some stairs:
Report going up from the Hall:
say “Carefully testing each step for it’s sturdiness,
you slowly make your way up the stairs.”.
The problem is that Inform 7, when used straight “out of the box,” does not understand the concept of sitting. You could define such a thing yourself, or you could use Emily Short’s “Postures” extension: inform7.com/extensions/Emily%20S … index.html
Alternatively, if you don’t need to distinguish between different kinds of being on the chair (sitting and standing, for example), you just define the chair as an “enterable supporter” (“enterable” means the player can be on/in it, and “supporter” specifies on instead of in – a steamer trunk might be an “enterable container” instead) and report on the player “entering the chair while in the library” instead.