1\DOC 2 3\TYPE {list_mk_icomb : term * term list -> term} 4 5\SYNOPSIS 6Folds {mk_icomb} over a series of arguments. 7 8\DESCRIBE 9A call to {list_mk_icomb(f,args)} combines {f} with each of the 10elements of the list {args} in turn, moving from left to right. If 11{args} is empty, then the result is simply {f}. When {args} is 12non-empty, the growing application-term is created with successive 13calls to {mk_icomb}, possibly causing type variables in any of the 14terms to become instantiated. 15 16\FAILURE 17Fails if any of the underlying calls to {mk_icomb} fails, which will 18occur if the type of the accumulating term (starting with {f}) is not 19of a function type, or if it has a domain type that can not be 20instantiated to equal the type of the next argument term. 21 22\COMMENTS 23{list_mk_icomb} is to {mk_icomb} what {list_mk_comb} is to {mk_comb}. 24 25\SEEALSO 26Term.list_mk_comb, Term.mk_comb, boolSyntax.mk_icomb. 27 28\ENDDOC 29