This command provides a diagnostic for the goodness-of-fit of
  a point process model fitted to a point pattern dataset.
  It computes an estimate of the $K$ function of the
  dataset, together with a model compensator of the
  $K$ function, which should be approximately equal if the model is a good
  fit to the data.  The first argument, object, is usually a fitted point process model
  (object of class "ppm"), obtained from the
  model-fitting function ppm.
  For convenience, object can also be a point pattern
  (object of class "ppp"). In that case, a point process
  model will be fitted to it, by calling ppm using the arguments
  trend (for the first order trend),
  interaction (for the interpoint interaction)
  and rbord (for the erosion distance in the border correction
  for the pseudolikelihood). See ppm for details
  of these arguments.
  The algorithm first extracts the original point pattern dataset
  (to which the model was fitted) and computes the 
  standard nonparametric estimates of the $K$ function.
  It then also computes the model compensator of the
  $K$ function. The different function estimates are returned
  as columns in a data frame (of class "fv").
  The argument correction determines the edge correction(s)
  to be applied. See Kest for explanation of the principle
  of edge corrections. The following table gives the options
  for the correction argument, and the corresponding
  column names in the result:
  llll{
    correction 	description of correction 	nonparametric 	compensator 
"isotropic" 	Ripley isotropic correction
    	iso 	icom 
"translate" 	Ohser-Stoyan translation correction
    	trans 	tcom 
"border" 	border correction
    	border 	bcom
  }
  The nonparametric estimates can all be expressed in the form
  $$\hat K(r) = \sum_i \sum_{j < i} e(x_i,x_j,r,x) I{ d(x_i,x_j) \le r }$$
  where $x_i$ is the $i$-th data point,
  $d(x_i,x_j)$ is the distance between $x_i$ and
  $x_j$, and $e(x_i,x_j,r,x)$ is
  a term that serves to correct edge effects and to re-normalise the
  sum. The corresponding model compensator is
  $${\bf C} \, \tilde K(r) = \int_W \lambda(u,x) \sum_j e(u,x_j,r,x \cup u) I{ d(u,x_j) \le r}$$
  where the integral is over all locations $u$ in
  the observation window, 
  $\lambda(u,x)$ denotes the conditional intensity
  of the model at the location $u$, and $x \cup u$ denotes the
  data point pattern $x$ augmented by adding the extra point $u$.
  
  If the fitted model is a Poisson point process, then the formulae above
  are exactly what is computed. If the fitted model is not Poisson, the 
  formulae above are modified slightly to handle edge effects.
  The modification is determined by the arguments
  conditional and restrict.
  The value of conditional defaults to FALSE for Poisson models
  and TRUE for non-Poisson models.
  If conditional=FALSE then the formulae above are not modified.
  If conditional=TRUE, then the algorithm calculates
  the restriction estimator if restrict=TRUE,
  and calculates the reweighting estimator if restrict=FALSE.
  See Appendix D of Baddeley, Rubak and Moller (2011).
  Thus, by default, the reweighting estimator is computed
  for non-Poisson models.
  
  The nonparametric estimates of $K(r)$ are approximately unbiased
  estimates of the $K$-function, assuming the point process is
  stationary. The model compensators are unbiased estimates
  of the mean values of the corresponding nonparametric estimates,
  assuming the model is true. Thus, if the model is a good fit, the mean value
  of the difference between the nonparametric estimates and model compensators
  is approximately zero.