for(Decl d: s.getFieldDecls()) {
k2pos_enabled = false;
for(ExprHasName n: d.names) {
Field f = (Field)n;
Expr form = s.decl.get().join(f).in(d.expr);
form = s.isOne==null ? form.forAll(s.decl) : ExprLet.make(null, (ExprVar)(s.decl.get()), s, form);
frame.addFormula(cform(form), f);
// Given the above, we can be sure that every column is well-bounded (except possibly the first column).
// Thus, we need to add a bound that the first column is a subset of s.
if (s.isOne==null) {
Expression sr = a2k(s), fr = a2k(f);