% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/coherent_dist.R, R/dual.R, R/generics.R
\name{dual.coherent_dist}
\alias{dual.coherent_dist}
\alias{dual.dist_structure}
\alias{dual.dual_of_system}
\alias{dual}
\title{Dual of a coherent_dist: swap cuts and paths}
\usage{
\method{dual}{coherent_dist}(x)

\method{dual}{dist_structure}(x)

\method{dual}{dual_of_system}(x)

dual(x)
}
\arguments{
\item{x}{A \link{dist_structure} object.}
}
\value{
A \link{dist_structure} object representing the dual.
}
\description{
Overrides the lazy-wrapper default with a proper \code{coherent_dist}:
\code{min_paths(dual(x)) = min_cuts(x)}.

Returns a \code{dual_of_system} object carrying the original structure.
\code{phi_dual(state) = 1 - phi(original, 1 - state)} is evaluated on demand.
All other generics fall through to \code{dist_structure} defaults.

The dual structure satisfies \code{phi_dual(state) = 1 - phi(1 - state)}. The
dual of a series system is parallel; the dual of k-out-of-n is
(n - k + 1)-out-of-n.
}
