New simulation abstraction