Dan Licata found a mistake in the definition of the composition of the universe
underlying this version of cubical type theory (with diagonal and connections).
This version was an attempt to combine univalence and definitional equality for
the computation rule for J. In order to achieve this, I tried to add a condition called
"regularity" on the filling operation. In turn, this condition simplifies the definition
of this filling operation and allows for a smooth addition of a diagonal operation
and connections. Cubical sets satisfying this condition are closed by dependent
product, sums, identity types, data types, inductive-recursive universe, propositional truncation,
and one can define HITs satisfying this condition. Function extensionality has a simple
proof. If we call U the universe of such
cubical sets, it is also the case that for any A B : U and T : U -> U, we have
T A -> T B as soon A and B are isomorphic (e.g. unary and binary numbers).
U itself has a composition operation, but the one used in this implementation is not regular
and it is open (but seems unlikely) if U has a regular composition operation.
Several examples we tried don't use the composition in the universe, and so are correct
w.r.t. this model. However, the underlying type theory is much weaker than one with univalence.
Actually all computations tried in this implementation worked (even the one involving univalence)...
Dan did not find the problem by experimenting with the system, but by considering a consequence
of regularity for a closely related model.
His counter-example is very simple and involves only the composition of two lines E : A -> B and
F : B -> C in the universe. The problem is then to find a definition of A -> C in a uniform way that
should be (strictly) equal to E when F is a constant line. Because of this simplicity, it shows well the
difficulty of combining univalence and definitional equality for the computation rule of J (following
this approach of giving a constructive version of the Kan filling condition).
As shown by the work on the simpler cubical set model (without diagonals and connections)
not having definitional equality for the computation rule of J does not seem to be an issue for the development
of consequences of univalence. Hopefully the convenient notation of equality proofs suggested by
the present implementation can be preserved for this simpler version of cubical sets.
However, not having a diagonal operation is a serious issue for HITs, and it not clear at this stage how
to have a diagonal operation and univalence, and how to justify HITs + univalence constructively.
Thierry