 	func testConstantTermsDestructSafely() {
 		assert(Term.constant(0).constant(Int)?.0, ==, 0)
 	}
+
+	func testConstantFunctionConstruction() {
+		assert(constant, ==, Term.pi(.type, .pi(.type, .pi(.bound(1), .pi(.bound(1), .bound(1))))))
+	}
 }
-
 
 private let identity = Value.pi(.type) { A in .pi(A, id) }.quote
 private let constant = Value.pi(.type) { A in Value.pi(.type) { B in Value.pi(A) { a in Value.pi(B) { b in a } } } }.quote

	}

	func testTypeOfAbstractionIsAbstractionType() {
		assert(Value.pi(.type, id).quote.typecheck().right?.quote, ==, Term(.Pi(Box(.type), Box(.type))))
	}



	}

	func testHigherOrderConstruction() {
		assert(identity, ==, Term.pi(.type, .pi(.bound(0), .bound(0))))
	}

	func testTypechecking() {
