  Elimination of unknowns in a system of differential equations is often
required when analysing (possibly nonlinear) dynamical systems models, where
only a subset of variables are observable. One such analysis, identifiability,
often relies on computing input-output relations via differential algebraic
elimination. Determining identifiability, a natural prerequisite for meaningful
parameter estimation, is often prohibitively expensive for medium to large
systems due to the computationally expensive task of elimination.
  We propose an algorithm that computes a description of the set of
differential-algebraic relations between the input and output variables of a
dynamical system model. The resulting algorithm outperforms general-purpose
software for differential elimination on a set of benchmark models from
literature.
  We use the designed elimination algorithm to build a new randomized algorithm
for assessing structural identifiability of a parameter in a parametric model.
A parameter is said to be identifiable if its value can be uniquely determined
from input-output data assuming the absence of noise and sufficiently exciting
inputs. Our new algorithm allows the identification of models that could not be
tackled before.
  Our implementation is publicly available as a Julia package at
https://github.com/SciML/StructuralIdentifiability.jl.
