added several invariants and functions related to IDT