Vagueness is the phenomenon that natural language predicates have borderline regions of applicability and that the boundaries of the borderline region are not determinable. A theory is presented which argues that vagueness is due to the fact that we are computationally bound by Church's Thesis. Syntactic and semantic models motivated by the theory are introduced. Each disallows the use of classical negation, capturing the fact that it is generally only possible to semidecide but not decide our interpretations of natural language predicates. The role of negation is filled, for each predicate R, by the existence of a dual predicate nonR that acts as if it is the negation, although its interpretation is generally, at best, only an approximation to the complement of R. Multiple "levels" of vagueness are modeled using concepts from recursion theory.R and things not R, and more than this, it is that any line drawn would seem ad hoc, arbitrary and wrong. Sometimes the borderline region is defined more epistemically as that region for which knowledge concerning membership in R is unattainable. The phenomenon is probably best communicated by example: wolves are borderline dog, violet is borderline blue, and so on.