// this will simplify *a lot* of the knarly stuff here, but can only be done once everything else
/// Adds a guard to the comprehension. Returns false if the guard does not only reference induction variables.
// for now, this is just used during parsing - a new symbol table is created using this when we initialise the comprehension