I noticed that the internal name of the live arguments are not always "HeadVar__1", "HeadVar__2", ... but sometimes "DCG_1" or "FileInput". Is it normal ? I thought that you were printing only the live arguments of a predicate and not other live variables. -- R1.