Constructivist analysis
From Academic Kids

In mathematics, constructive analysis is mathematical analysis done according to the principles of constructivist mathematics. This contrasts with classical analysis, which (in this context) simply means analysis done according to the (ordinary) principles of classical mathematics.
Generally speaking, constructive analysis can reproduce theorems of classical analysis, but only in application to separable spaces; also, some theorems may need to be approached by approximations. Furthermore, many classical theorems can be stated in ways that are logically equivalent according to classical logic, but not all of these forms will be valid in constructive analysis, which uses intuitionistic logic.
Examples
The intermediate value theorem
For a simple example, consider the intermediate value theorem (IVT). In classical analysis, IVT says that, given any continuous function f from a closed interval [a,b] to the real line R, if f(a) is negative while f(b) is positive, then there exists a real number c in the interval such that f(c) is exactly zero. In constructive analysis, this does not hold, because the constructive interpretation of existential quantification ("there exists") requires one to be able to construct the real number c (in the sense that it can be approximated to any desired precision by a rational number). But if f hovers near zero during a stretch along its domain, then this cannot necessarily be done.
However, constructive analysis provides several alternative formulations of IVT, all of which are equivalent to the usual form in classical analysis, but not in constructive analysis. For example, under the same conditions on f as in the classical theorem, given any natural number n (no matter how large), there exists (that is, we can construct) a real number c_{n} in the interval such that the absolute value of f(c_{n}) is less than 1/n. That is, we can get as close to zero as we like, even if we can't construct a c that gives us exactly zero.
Alternatively, we can keep the same conclusion as in the classical IVT  a single c such that f(c) is exactly zero  while strengthening the conditions on f. We require that f be locally nonzero, meaning that given any point x in the interval [a,b] and any natural number m, there exists (we can construct) a real number y in the interval such that y  x < 1/m and f(y) > 0. In this case, the desired number c can be constructed. This is a complicated condition, but there are several other conditions which imply it and which are commonly met; for example, every analytic function is locally nonzero (assuming that it already satisfies f(a) < 0 and f(b) > 0).
For another way to view this example, notice that according to classical logic, if the locally nonzero condition fails, then it must fail at some specific point x; and then f(x) will equal 0, so that IVT is valid automatically. Thus in classical analysis, which uses classical logic, in order to prove the full IVT, it is sufficient to prove the constructive version. From this perspective, the full IVT fails in constructive analysis simply because constructive analysis does not accept classical logic. Conversely, one may argue that the true meaning of IVT, even in classical mathematics, is the constructive version involving the locally nonzero condition, with the full IVT following by "pure logic" afterwards. Some logicians, while accepting that classical mathematics is correct, still believe that the constructive approach gives a better insight into the true meaning of theorems, in much this way.
The least upper bound principle and compact sets
Another difference between classical and constructive analysis is that constructive analysis does not accept the least upper bound principle, that any subset of the real line R has a least upper bound (or supremum), possibly infinite. However, as with the intermediate value theorem, an alternative version survives; in constructive analysis, any located subset of the real line has a supremum. (Here a subset S of R is located if, whenever x < y are real numbers, either there exists an element s of S such that x < s, or y is an upper bound of S.) Again, this is classically equivalent to the full least upper bound principle, since every set is located in classical mathematics. And again, while the definition of located set is complicated, nevertheless it is satisfied by several commonly studied sets, including all intervals and compact sets.
Closely related to this, in constructive mathematics, fewer characterisations of compact spaces are constructively valid  or from another point of view, there are several different concepts which are classically equivalent but not constructively equivalent. Indeed, if the interval [a,b] were sequentially compact in constructive analysis, then the classical IVT would follow from the first constructive version in the example; one could find c as a cluster point of the infinite sequence (c_{n})_{n}.