This checks: - The examples from the documentation of `reduce(_:_:)` and `reduce(into:_:)`. - Different levels of inference in the closure arguments being passed. - That the value passed as the `initialResult` remains unmodified.