anchor.diff:  === Alternatives
   
   There are plenty of additional coercions to consider.
  -Coercion from `CTNumber` to `CTFloat` would, under the current type system, function exactly the same as the exisiting `CTInteger` to `CTFloat` coercion, and it would solve the issue discussed in the Background section.
  +Coercion from `NUMBER` to `FLOAT` would, under the current type system, function exactly the same as the existing `INTEGER` to `FLOAT` coercion, and it would solve the issue discussed in <<Background>>.
   
   [source, cypher]
   ----
  -WITH [1, 1.01] as numbers RETURN [ x in numbers | cos(x) ]
  +WITH [1, 1.01] AS numbers
  +RETURN [ x IN numbers | cos(x) ]
   ----
   
   Pros:
  
positive.code: 
  == Background
  
  In the case of a collection with both integer and floating-point numbers, it's type will be a collection of numbers.
  Functions that work on both integers and floats would then accept all elements of this collection one-by-one, but if they do not also accept type number they will not be able to act on the collection itself when used in a comprehension.
  In this type of situation, it is very valuable for a user to know what kinds of coercions that Cypher will perform, and what explicit casting that they will have to do themselves.
  
  == Proposal
  
  The current Cypher behavior is proposed, which consists of two type coercions: `CTCollection` to `CTBoolean`, and `CTInteger` to `CTFloat`.
  
  === Examples
  
  Here follows a few queries in which types are coerced.
  
  Check if a collection is empty, and if it is not, return the first element:
  [source, cypher]
  ----
  WITH [] as coll
  WHERE coll
  RETURN coll[0]
  ----
  
  Return the size of a non-empty collection:
  [source, cypher]
  ----
  WITH [1,2,3.5] as coll
  WHERE coll
  RETURN size(coll)
  ----
  
  Calculate the cosine of a value:
  [source, cypher]
  ----
  WITH 1 as int
  RETURN cos(int)
  ----
  
  === Syntax
  
negative.code: :toc-placement: macro
  :source-highlighter: codemirror
  
  *Authors:* Henrik Nyman henrik.nyman@neotechnology.com, Mats Rydberg mats@neotechnology.com
  
  
  [abstract]
  