diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index abd5aed086d41df953283650a28dfe4b25342897..6dc1f58eb3c3ea21501e96039a566196eddd2a8e 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -37,7 +37,7 @@ build_docker_from_cache:
 test_serial:
   stage: test
   script:
-    - pytest-3 -q --cov=nifty5 test
+    - pytest-3 -q --cov=nifty6 test
     - >
       python3 -m coverage report --omit "*plot*,*distributed_do*" | tee coverage.txt
     - >
@@ -59,7 +59,7 @@ pages:
     paths:
     - public
   only:
-  - NIFTy_5
+  - NIFTy_6
 
 
 before_script:
diff --git a/README.md b/README.md
index 42bfc14db5c2b673343f733e6353e3c80adc5c70..01cb26fff29765aa8e5b9504dc6279e99f73e36d 100644
--- a/README.md
+++ b/README.md
@@ -1,7 +1,7 @@
 NIFTy - Numerical Information Field Theory
 ==========================================
-[![build status](https://gitlab.mpcdf.mpg.de/ift/NIFTy/badges/NIFTy_5/build.svg)](https://gitlab.mpcdf.mpg.de/ift/NIFTy/commits/NIFTy_5)
-[![coverage report](https://gitlab.mpcdf.mpg.de/ift/NIFTy/badges/NIFTy_5/coverage.svg)](https://gitlab.mpcdf.mpg.de/ift/NIFTy/commits/NIFTy_5)
+[![build status](https://gitlab.mpcdf.mpg.de/ift/NIFTy/badges/NIFTy_6/build.svg)](https://gitlab.mpcdf.mpg.de/ift/NIFTy/commits/NIFTy_6)
+[![coverage report](https://gitlab.mpcdf.mpg.de/ift/NIFTy/badges/NIFTy_6/coverage.svg)](https://gitlab.mpcdf.mpg.de/ift/NIFTy/commits/NIFTy_6)
 
 **NIFTy** project homepage:
 [http://ift.pages.mpcdf.de/nifty](http://ift.pages.mpcdf.de/nifty)
@@ -59,8 +59,8 @@ Optional dependencies:
 
 ### Sources
 
-The current version of Nifty5 can be obtained by cloning the repository and
-switching to the NIFTy_5 branch:
+The current version of NIFTy6 can be obtained by cloning the repository and
+switching to the NIFTy_6 branch:
 
     git clone https://gitlab.mpcdf.mpg.de/ift/nifty.git
 
@@ -69,10 +69,10 @@ switching to the NIFTy_5 branch:
 In the following, we assume a Debian-based distribution. For other
 distributions, the "apt" lines will need slight changes.
 
-NIFTy5 and its mandatory dependencies can be installed via:
+NIFTy6 and its mandatory dependencies can be installed via:
 
     sudo apt-get install git python3 python3-pip python3-dev
-    pip3 install --user git+https://gitlab.mpcdf.mpg.de/ift/nifty.git@NIFTy_5
+    pip3 install --user git+https://gitlab.mpcdf.mpg.de/ift/nifty.git@NIFTy_6
     pip3 install --user git+https://gitlab.mpcdf.mpg.de/mtr/pypocketfft
 
 Plotting support is added via:
@@ -100,7 +100,7 @@ To run the tests, additional packages are required:
 Afterwards the tests (including a coverage report) can be run using the
 following command in the repository root:
 
-    pytest-3 --cov=nifty5 test
+    pytest-3 --cov=nifty6 test
 
 
 ### First Steps
diff --git a/demos/Wiener_Filter.ipynb b/demos/Wiener_Filter.ipynb
index 8b69697254687b7d47adf57e55ec9edd2edc0294..0b6da7af6cc6801bcc8e91c8c73c0ac04bca8f5f 100644
--- a/demos/Wiener_Filter.ipynb
+++ b/demos/Wiener_Filter.ipynb
@@ -141,7 +141,7 @@
    "source": [
     "import numpy as np\n",
     "np.random.seed(40)\n",
-    "import nifty5 as ift\n",
+    "import nifty6 as ift\n",
     "import matplotlib.pyplot as plt\n",
     "%matplotlib inline"
    ]
diff --git a/demos/bench_gridder.py b/demos/bench_gridder.py
index 48ae4f3b1b8a3ff9390581695fcdf31e53c25d81..a35ef026852e1a0d4bd0b3c54eebb81d19e08533 100644
--- a/demos/bench_gridder.py
+++ b/demos/bench_gridder.py
@@ -3,7 +3,7 @@ from time import time
 import matplotlib.pyplot as plt
 import numpy as np
 
-import nifty5 as ift
+import nifty6 as ift
 
 np.random.seed(40)
 
diff --git a/demos/bernoulli_demo.py b/demos/bernoulli_demo.py
index 77c4f975e9bbc5e75ee2b0bea606d5d312203c46..04c0ef26648d1c9faf45b2d2eead3f9f3ba9aa98 100644
--- a/demos/bernoulli_demo.py
+++ b/demos/bernoulli_demo.py
@@ -24,7 +24,7 @@
 
 import numpy as np
 
-import nifty5 as ift
+import nifty6 as ift
 
 if __name__ == '__main__':
     np.random.seed(41)
diff --git a/demos/find_amplitude_parameters.py b/demos/find_amplitude_parameters.py
index 1d7c76b8ff68d6bdf4505e559ae72ba6589ef727..9a568130a826606ab849e1fada6849df824dbe96 100644
--- a/demos/find_amplitude_parameters.py
+++ b/demos/find_amplitude_parameters.py
@@ -18,7 +18,7 @@
 
 import numpy as np
 
-import nifty5 as ift
+import nifty6 as ift
 import matplotlib.pyplot as plt
 
 
diff --git a/demos/getting_started_1.py b/demos/getting_started_1.py
index 3cd0e0e4bf99f2dcf77777f0629385d02d60ef1e..3fb17ddcb38ade6c8ba2d000d7f2886ed3e20bc3 100644
--- a/demos/getting_started_1.py
+++ b/demos/getting_started_1.py
@@ -25,7 +25,7 @@ import sys
 
 import numpy as np
 
-import nifty5 as ift
+import nifty6 as ift
 
 
 def make_checkerboard_mask(position_space):
diff --git a/demos/getting_started_2.py b/demos/getting_started_2.py
index 18c8f025ad006c26d6f854ab1e1aa5f1f25f93fb..62504258821ab42bfc5aa7ecf09332432eda980d 100644
--- a/demos/getting_started_2.py
+++ b/demos/getting_started_2.py
@@ -25,7 +25,7 @@ import sys
 
 import numpy as np
 
-import nifty5 as ift
+import nifty6 as ift
 
 
 def exposure_2d():
diff --git a/demos/getting_started_3.py b/demos/getting_started_3.py
index 5f05252077b2f52560821ca76dfc1ec16b092c72..2032c6b8c1dc442d53df0cdecbdcfaaf24836e09 100644
--- a/demos/getting_started_3.py
+++ b/demos/getting_started_3.py
@@ -29,7 +29,7 @@ import sys
 
 import numpy as np
 
-import nifty5 as ift
+import nifty6 as ift
 
 
 def random_los(n_los):
diff --git a/demos/getting_started_mf.py b/demos/getting_started_mf.py
index 0a6232da3ac15a261245ae894ee915b63af53e38..4492a0c8668b1ce139f9af2b54b8576014e06e3c 100644
--- a/demos/getting_started_mf.py
+++ b/demos/getting_started_mf.py
@@ -29,7 +29,7 @@ import sys
 
 import numpy as np
 
-import nifty5 as ift
+import nifty6 as ift
 
 
 class SingleDomain(ift.LinearOperator):
diff --git a/demos/misc/convolution.py b/demos/misc/convolution.py
index 7d057775c54bd9acdce06da48fe15875876c735b..77498ecb544d297657285eed0e03be55679fff24 100644
--- a/demos/misc/convolution.py
+++ b/demos/misc/convolution.py
@@ -1,5 +1,5 @@
 import numpy as np
-import nifty5 as ift
+import nifty6 as ift
 
 
 def convtest(test_signal, delta, func):
diff --git a/demos/multi_amplitudes_consistency.py b/demos/multi_amplitudes_consistency.py
index db128551e4aec2c42e9f63e7f8c9c803071348ff..ef8c24c9e7fdd77dc2870c4f8f9105ef915e7c7e 100644
--- a/demos/multi_amplitudes_consistency.py
+++ b/demos/multi_amplitudes_consistency.py
@@ -1,4 +1,4 @@
-import nifty5 as ift
+import nifty6 as ift
 import numpy as np
 
 
diff --git a/demos/newamplitudes.py b/demos/newamplitudes.py
index 9c236490f8b50e1a3cb826260143e386b0c757d3..ad6ffb014c6957b3029cc10bf6f66969dbd6983c 100644
--- a/demos/newamplitudes.py
+++ b/demos/newamplitudes.py
@@ -1,4 +1,4 @@
-import nifty5 as ift
+import nifty6 as ift
 import numpy as np
 np.random.seed(42)
 
diff --git a/demos/polynomial_fit.py b/demos/polynomial_fit.py
index cf5f776d8f09a06878fb733e0c3428d00824dda5..93d04797fd20e304393580a9a05fe63106ee6cff 100644
--- a/demos/polynomial_fit.py
+++ b/demos/polynomial_fit.py
@@ -18,7 +18,7 @@
 import matplotlib.pyplot as plt
 import numpy as np
 
-import nifty5 as ift
+import nifty6 as ift
 np.random.seed(12)
 
 
diff --git a/docs/generate.sh b/docs/generate.sh
index 4dd659fc27d33e9dd6f1c7a89a520201478512e6..73828a38220a84667985c744742396c57a24420c 100755
--- a/docs/generate.sh
+++ b/docs/generate.sh
@@ -1,3 +1,3 @@
 rm -rf docs/build docs/source/mod
-sphinx-apidoc -e -o docs/source/mod nifty5
+sphinx-apidoc -e -o docs/source/mod nifty6
 sphinx-build -b html docs/source/ docs/build/
diff --git a/docs/source/citations.rst b/docs/source/citations.rst
index b9c864a259d9f9914fda84f3352e6419d9eaa929..fba4b65353340b7dcf11e89d06628a3da0c6f245 100644
--- a/docs/source/citations.rst
+++ b/docs/source/citations.rst
@@ -2,8 +2,8 @@ NIFTy-related publications
 ==========================
 
 ::
-    @article{asclnifty5,
-      title={NIFTy5: Numerical Information Field Theory v5},
+    @article{asclnifty6,
+      title={NIFTy6: Numerical Information Field Theory v5},
       author={Arras, Philipp and Baltac, Mihai and Ensslin, Torsten A and Frank, Philipp and Hutschenreuter, Sebastian and Knollmueller, Jakob and Leike, Reimar and Newrzella, Max-Niklas and Platz, Lukas and Reinecke, Martin and others},
       journal={Astrophysics Source Code Library},
       year={2019}
@@ -13,7 +13,7 @@ NIFTy-related publications
       author = {{Martin Reinecke, Theo Steininger, Marco Selig}},
       title = {NIFTy -- Numerical Information Field TheorY},
       url = {https://gitlab.mpcdf.mpg.de/ift/NIFTy},
-      version = {nifty5},
+      version = {nifty6},
       date = {2018-04-05},
     }
 
diff --git a/docs/source/code.rst b/docs/source/code.rst
index bb14397617701df6c84fa575f1c60e7d4d4e8a0a..ea08950906a500bfee710b0c01ba33a6548d7989 100644
--- a/docs/source/code.rst
+++ b/docs/source/code.rst
@@ -36,9 +36,9 @@ Domains
 Abstract base class
 -------------------
 
-.. currentmodule:: nifty5.domains.domain
+.. currentmodule:: nifty6.domains.domain
 
-One of the fundamental building blocks of the NIFTy5 framework is the *domain*.
+One of the fundamental building blocks of the NIFTy6 framework is the *domain*.
 Its required capabilities are expressed by the abstract :py:class:`Domain` class.
 A domain must be able to answer the following queries:
 
@@ -52,7 +52,7 @@ A domain must be able to answer the following queries:
 Unstructured domains
 --------------------
 
-.. currentmodule:: nifty5.domains.unstructured_domain
+.. currentmodule:: nifty6.domains.unstructured_domain
 
 Domains can be either *structured* (i.e. there is geometrical information
 associated with them, like position in space and volume factors),
@@ -65,7 +65,7 @@ Unstructured domains can be described by instances of NIFTy's
 Structured domains
 ------------------
 
-.. currentmodule:: nifty5.domains.structured_domain
+.. currentmodule:: nifty6.domains.structured_domain
 
 In contrast to unstructured domains, these domains have an assigned geometry.
 NIFTy requires them to provide the volume elements of their grid cells.
@@ -86,7 +86,7 @@ The additional methods are specified in the abstract class
 
 NIFTy comes with several concrete subclasses of :class:`StructuredDomain`:
 
-.. currentmodule:: nifty5.domains
+.. currentmodule:: nifty6.domains
 
 - :class:`~rg_space.RGSpace` represents a regular Cartesian grid with an arbitrary
   number of dimensions, which is supposed to be periodic in each dimension.
@@ -123,7 +123,7 @@ Some examples are:
   (on a harmonic domain) and a few inferred model parameters (e.g. on an
   unstructured grid).
 
-.. currentmodule:: nifty5
+.. currentmodule:: nifty6
 
 Consequently, NIFTy defines a class called :class:`~domain_tuple.DomainTuple`
 holding a sequence of :class:`~domains.domain.Domain` objects. The full domain is
@@ -228,7 +228,7 @@ Advanced operators
 NIFTy provides a library of commonly employed operators which can be used for
 specific inference problems. Currently these are:
 
-.. currentmodule:: nifty5.library
+.. currentmodule:: nifty6.library
 
 - :class:`~smooth_linear_amplitude.SLAmplitude`, which returns a smooth power spectrum.
 - :class:`~inverse_gamma_operator.InverseGammaOperator`, which models point sources which are
@@ -240,9 +240,9 @@ specific inference problems. Currently these are:
 Linear Operators
 ================
 
-.. currentmodule:: nifty5.operators
+.. currentmodule:: nifty6.operators
 
-A linear operator (represented by NIFTy5's abstract
+A linear operator (represented by NIFTy6's abstract
 :class:`~linear_operator.LinearOperator` class) is derived from
 :class:`~operator.Operator` and can be interpreted as an (implicitly defined)
 matrix. Since its operation is linear, it can provide some additional
@@ -282,7 +282,7 @@ This functionality is provided by NIFTy's
 :class:`~inversion_enabler.InversionEnabler` class, which is itself a linear
 operator.
 
-.. currentmodule:: nifty5.operators.operator
+.. currentmodule:: nifty6.operators.operator
 
 Direct multiplication and adjoint inverse multiplication transform a field
 defined on the operator's :attr:`~Operator.domain` to one defined on the
@@ -290,7 +290,7 @@ operator's :attr:`~Operator.target`, whereas adjoint multiplication and inverse
 multiplication transform from :attr:`~Operator.target` to
 :attr:`~Operator.domain`.
 
-.. currentmodule:: nifty5.operators
+.. currentmodule:: nifty6.operators
 
 Operators with identical domain and target can be derived from
 :class:`~endomorphic_operator.EndomorphicOperator`. Typical examples for this
@@ -299,7 +299,7 @@ multiplies its input by a scalar value, and
 :class:`~diagonal_operator.DiagonalOperator`, which multiplies every value of
 its input field with potentially different values.
 
-.. currentmodule:: nifty5
+.. currentmodule:: nifty6
 
 Further operator classes provided by NIFTy are
 
@@ -317,7 +317,7 @@ Further operator classes provided by NIFTy are
 Syntactic sugar
 ---------------
 
-Nifty5 allows simple and intuitive construction of altered and combined
+NIFTy allows simple and intuitive construction of altered and combined
 operators.
 As an example, if ``A``, ``B`` and ``C`` are of type :class:`~operators.linear_operator.LinearOperator`
 and ``f1`` and ``f2`` are of type :class:`~field.Field`, writing::
@@ -325,7 +325,7 @@ and ``f1`` and ``f2`` are of type :class:`~field.Field`, writing::
     X = A(B.inverse(A.adjoint)) + C
     f2 = X(f1)
 
-.. currentmodule:: nifty5.operators.linear_operator
+.. currentmodule:: nifty6.operators.linear_operator
 
 will perform the operation suggested intuitively by the notation, checking
 domain compatibility while building the composed operator.
@@ -349,12 +349,12 @@ Minimization
 Most problems in IFT are solved by (possibly nested) minimizations of
 high-dimensional functions, which are often nonlinear.
 
-.. currentmodule:: nifty5.minimization
+.. currentmodule:: nifty6.minimization
 
 Energy functionals
 ------------------
 
-In NIFTy5 such functions are represented by objects of type
+In NIFTy6 such functions are represented by objects of type
 :class:`~energy.Energy`. These hold the prescription how to calculate the
 function's :attr:`~energy.Energy.value`, :attr:`~energy.Energy.gradient` and
 (optionally) :attr:`~energy.Energy.metric` at any given
@@ -362,11 +362,11 @@ function's :attr:`~energy.Energy.value`, :attr:`~energy.Energy.gradient` and
 floating-point scalars, gradients have the form of fields defined on the energy's
 position domain, and metrics are represented by linear operator objects.
 
-.. currentmodule:: nifty5
+.. currentmodule:: nifty6
 
 Energies are classes that typically have to be provided by the user when
 tackling new IFT problems. An example of concrete energy classes delivered with
-NIFTy5 is :class:`~minimization.quadratic_energy.QuadraticEnergy` (with
+NIFTy6 is :class:`~minimization.quadratic_energy.QuadraticEnergy` (with
 position-independent metric, mainly used with conjugate gradient minimization).
 
 For MGVI, NIFTy provides the :class:`~energy.Energy` subclass
@@ -394,14 +394,14 @@ functional for MGVI and minimize it.
 Iteration control
 -----------------
 
-.. currentmodule:: nifty5.minimization.iteration_controllers
+.. currentmodule:: nifty6.minimization.iteration_controllers
 
 Iterative minimization of an energy requires some means of
 checking the quality of the current solution estimate and stopping once
 it is sufficiently accurate. In case of numerical problems, the iteration needs
 to be terminated as well, returning a suitable error description.
 
-In NIFTy5, this functionality is encapsulated in the abstract
+In NIFTy6, this functionality is encapsulated in the abstract
 :class:`IterationController` class, which is provided with the initial energy
 object before starting the minimization, and is updated with the improved
 energy after every iteration. Based on this information, it can either continue
@@ -418,7 +418,7 @@ in NIFTy can be found below, but users have complete freedom to implement custom
 Minimization algorithms
 -----------------------
 
-.. currentmodule:: nifty5.minimization
+.. currentmodule:: nifty6.minimization
 
 All minimization algorithms in NIFTy inherit from the abstract
 :class:`~minimizer.Minimizer` class, which presents a minimalistic interface
@@ -459,7 +459,7 @@ available under the names :class:`~scipy_minimizer.ScipyCG` and
 Application to operator inversion
 ---------------------------------
 
-.. currentmodule:: nifty5
+.. currentmodule:: nifty6
 
 The machinery presented here cannot only be used for minimizing functionals
 derived from IFT, but also for the numerical inversion of linear operators, if
diff --git a/docs/source/conf.py b/docs/source/conf.py
index 0c5b912005e8b9cd9831f1706e75412a3f217385..1a0af1502216dac01ade1468a3c984b8a0b66763 100644
--- a/docs/source/conf.py
+++ b/docs/source/conf.py
@@ -1,4 +1,4 @@
-import nifty5
+import nifty6
 
 extensions = [
     'sphinx.ext.napoleon',  # Support for NumPy and Google style docstrings
@@ -15,11 +15,11 @@ napoleon_use_admonition_for_examples = True
 napoleon_use_admonition_for_references = True
 napoleon_include_special_with_doc = True
 
-project = u'NIFTy5'
+project = u'NIFTy6'
 copyright = u'2013-2019, Max-Planck-Society'
 author = u'Martin Reinecke'
 
-release = nifty5.version.__version__
+release = nifty6.version.__version__
 version = release[:-2]
 
 language = None
@@ -30,5 +30,5 @@ html_theme = "sphinx_rtd_theme"
 html_logo = 'nifty_logo_black.png'
 
 exclude_patterns = [
-    'mod/modules.rst', 'mod/nifty5.git_version.rst', 'mod/nifty5.logger.rst'
+    'mod/modules.rst', 'mod/nifty6.git_version.rst', 'mod/nifty6.logger.rst'
 ]
diff --git a/docs/source/ift.rst b/docs/source/ift.rst
index 3b297d1ee485c446ce1dff4b7c60aca45aa60647..d3dbd6649247a26ff4982e3f0861a130f389cf57 100644
--- a/docs/source/ift.rst
+++ b/docs/source/ift.rst
@@ -174,7 +174,7 @@ It only requires minimizing the information Hamiltonian, e.g. by a gradient desc
 
     \frac{\partial \mathcal{H}(d,\xi)}{\partial \xi} = 0.
 
-NIFTy5 automatically calculates the necessary gradient from a generative model of the signal and the data and uses this to minimize the Hamiltonian.
+NIFTy6 automatically calculates the necessary gradient from a generative model of the signal and the data and uses this to minimize the Hamiltonian.
 
 However, MAP often provides unsatisfactory results in cases of deep hirachical Bayesian networks.
 The reason for this is that MAP ignores the volume factors in parameter space, which are not to be neglected in deciding whether a solution is reasonable or not.
@@ -224,7 +224,7 @@ Thus, only the gradient of the KL is needed with respect to this, which can be e
 
 We stochastically estimate the KL-divergence and gradients with a set of samples drawn from the approximate posterior distribution.
 The particular structure of the covariance allows us to draw independent samples solving a certain system of equations.
-This KL-divergence for MGVI is implemented in the class :class:`~minimization.metric_gaussian_kl.MetricGaussianKL` within NIFTy5.
+This KL-divergence for MGVI is implemented in the class :class:`~minimization.metric_gaussian_kl.MetricGaussianKL` within NIFTy6.
 
 
 The demo `getting_started_3.py` for example not only infers a field this way, but also the power spectrum of the process that has generated the field.
diff --git a/docs/source/index.rst b/docs/source/index.rst
index dcda398fef346de69e32f88c7aa3f625a22b0b7c..bf6ae63256c1b1191fd4db8da4e4770365c0a774 100644
--- a/docs/source/index.rst
+++ b/docs/source/index.rst
@@ -31,4 +31,4 @@ Contents
    installation
    code
    citations
-   Package Documentation <mod/nifty5>
+   Package Documentation <mod/nifty6>
diff --git a/docs/source/installation.rst b/docs/source/installation.rst
index 38173a6c499f47ed399dfe277d02d55e5d8221d4..d8f9cca50639d09325dfc0ac317bce5afbf0db2f 100644
--- a/docs/source/installation.rst
+++ b/docs/source/installation.rst
@@ -5,10 +5,10 @@ Installation
 In the following, we assume a Debian-based Linux distribution. For other
 distributions, the "apt" lines will need slight changes.
 
-NIFTy5 and its mandatory dependencies can be installed via::
+NIFTy6 and its mandatory dependencies can be installed via::
 
     sudo apt-get install git python3 python3-pip python3-dev
-    pip3 install --user git+https://gitlab.mpcdf.mpg.de/ift/nifty.git@NIFTy_5
+    pip3 install --user git+https://gitlab.mpcdf.mpg.de/ift/nifty.git@NIFTy_6
     pip3 install --user git+https://gitlab.mpcdf.mpg.de/mtr/pypocketfft
 
 Plotting support is added via::
diff --git a/docs/source/volume.rst b/docs/source/volume.rst
index 89dc9419d28bd59d79bfe0ddd0fa4ecee3a786a1..2b1318f09b9a41e1dcd51648b258ec7c476b758f 100644
--- a/docs/source/volume.rst
+++ b/docs/source/volume.rst
@@ -148,7 +148,7 @@ A visualisation of this can be seen in figure 2, which displays the MAP inferenc
 Implementation in NIFTy
 .......................
 
-.. currentmodule:: nifty5
+.. currentmodule:: nifty6
 
 Most codes in NIFTy will contain the description of a measurement process or,
 more generally, a log-likelihood.
diff --git a/nifty5/__init__.py b/nifty5/__init__.py
index e7989472facc7ede30c17c4727c018b01274e1d2..1ddfd796647d828d11db6f7c9ac28183fba1dd4d 100644
--- a/nifty5/__init__.py
+++ b/nifty5/__init__.py
@@ -99,4 +99,4 @@ if _scheme == "Samples":
     from .minimization.metric_gaussian_kl_mpi import MetricGaussianKL_MPI
 
 # We deliberately don't set __all__ here, because we don't want people to do a
-# "from nifty5 import *"; that would swamp the global namespace.
+# "from nifty6 import *"; that would swamp the global namespace.
diff --git a/nifty5/domains/gl_space.py b/nifty5/domains/gl_space.py
index 85a0dba9927bfb62bfad30766076ebbbb641b016..8172af35135cf4a3fdd90a6b2e626b8fc0c9acf9 100644
--- a/nifty5/domains/gl_space.py
+++ b/nifty5/domains/gl_space.py
@@ -24,7 +24,7 @@ class GLSpace(StructuredDomain):
     """Represents a 2-sphere with Gauss-Legendre pixelization.
 
     Its harmonic partner domain is the
-    :class:`~nifty5.domains.lm_space.LMSpace`.
+    :class:`~nifty6.domains.lm_space.LMSpace`.
 
     Parameters
     ----------
diff --git a/nifty5/domains/hp_space.py b/nifty5/domains/hp_space.py
index 6058647330d67e56de7aa0a212c3387a4edf0eda..a07a4e5c8034409bd35ef1921018cc7b027f019e 100644
--- a/nifty5/domains/hp_space.py
+++ b/nifty5/domains/hp_space.py
@@ -24,7 +24,7 @@ class HPSpace(StructuredDomain):
     """Represents 2-sphere with HEALPix discretization.
 
     Its harmonic partner domain is the
-    :class:`~nifty5.domains.lm_space.LMSpace`.
+    :class:`~nifty6.domains.lm_space.LMSpace`.
 
     Parameters
     ----------
diff --git a/nifty5/domains/lm_space.py b/nifty5/domains/lm_space.py
index 5e0f30ffbba22267466895656855f9e4fed2de99..081106ee40a5060d0a61099b583162703f6a1613 100644
--- a/nifty5/domains/lm_space.py
+++ b/nifty5/domains/lm_space.py
@@ -24,8 +24,8 @@ from .structured_domain import StructuredDomain
 class LMSpace(StructuredDomain):
     """Represents a set of spherical harmonic coefficients.
 
-    Its harmonic partner spaces are :class:`~nifty5.domains.hp_space.HPSpace`
-    and :class:`~nifty5.domains.gl_space.GLSpace`.
+    Its harmonic partner spaces are :class:`~nifty6.domains.hp_space.HPSpace`
+    and :class:`~nifty6.domains.gl_space.GLSpace`.
 
     Parameters
     ----------
@@ -152,7 +152,7 @@ class LMSpace(StructuredDomain):
         return self._mmax
 
     def get_default_codomain(self):
-        """Returns a :class:`~nifty5.domains.gl_space.GLSpace` object, which is
+        """Returns a :class:`~nifty6.domains.gl_space.GLSpace` object, which is
         capable of storing an accurate representation of data residing on
         `self`.
 
diff --git a/nifty5/domains/unstructured_domain.py b/nifty5/domains/unstructured_domain.py
index a39127fbadb763c04f914417d818d76166eb903e..60029938f24c0716c2872a87d7d20f06cbaf91ba 100644
--- a/nifty5/domains/unstructured_domain.py
+++ b/nifty5/domains/unstructured_domain.py
@@ -20,7 +20,7 @@ from .domain import Domain
 
 
 class UnstructuredDomain(Domain):
-    """A :class:`~nifty5.domains.domain.Domain` subclass for spaces with no
+    """A :class:`~nifty6.domains.domain.Domain` subclass for spaces with no
     associated geometry.
 
     Typically used for data spaces.
diff --git a/nifty5/field.py b/nifty5/field.py
index fb02b781fb56168f404583bbb4b71cddbba3ecc4..e7572c03f57c1035d3b2333c30ec15ec4d548f0f 100644
--- a/nifty5/field.py
+++ b/nifty5/field.py
@@ -595,10 +595,10 @@ class Field(object):
         return sqrt(self.var(spaces))
 
     def __repr__(self):
-        return "<nifty5.Field>"
+        return "<nifty6.Field>"
 
     def __str__(self):
-        return "nifty5.Field instance\n- domain      = " + \
+        return "nifty6.Field instance\n- domain      = " + \
                self._domain.__str__() + \
                "\n- val         = " + repr(self._val)
 
diff --git a/nifty5/logger.py b/nifty5/logger.py
index 462141f2e4d51e304d33141c768aa6466ca0e529..29ba83215138c6baf5a6d55d003e4524bf0688bd 100644
--- a/nifty5/logger.py
+++ b/nifty5/logger.py
@@ -19,7 +19,7 @@
 def _logger_init():
     import logging
     from . import dobj
-    res = logging.getLogger('NIFTy5')
+    res = logging.getLogger('NIFTy6')
     res.setLevel(logging.DEBUG)
     res.propagate = False
     if dobj.rank == 0:
diff --git a/nifty5/minimization/conjugate_gradient.py b/nifty5/minimization/conjugate_gradient.py
index 0dbc89a24c033f12b330d113d4e5ba7826a35dde..9028f38abd643a10b7994a803f57b88d656c615e 100644
--- a/nifty5/minimization/conjugate_gradient.py
+++ b/nifty5/minimization/conjugate_gradient.py
@@ -27,7 +27,7 @@ class ConjugateGradient(Minimizer):
 
     Parameters
     ----------
-    controller : :py:class:`nifty5.IterationController`
+    controller : :py:class:`nifty6.IterationController`
         Object that decides when to terminate the minimization.
     nreset : int
         every `nreset` CG steps the residual will be recomputed accurately
diff --git a/setup.py b/setup.py
index 455e18d7cdf74b9bb2cb4392e09b81eb4be8e272..667879bc1c1f1adb9471cf32d01e60ed0a067e2c 100644
--- a/setup.py
+++ b/setup.py
@@ -23,20 +23,20 @@ def write_version():
     p = subprocess.Popen(["git", "describe", "--dirty", "--tags", "--always"],
                          stdout=subprocess.PIPE)
     res = p.communicate()[0].strip().decode('utf-8')
-    with open("nifty5/git_version.py", "w") as file:
+    with open("nifty6/git_version.py", "w") as file:
         file.write('gitversion = "{}"\n'.format(res))
 
 
 write_version()
-exec(open('nifty5/version.py').read())
+exec(open('nifty6/version.py').read())
 
-setup(name="nifty5",
+setup(name="nifty6",
       version=__version__,
       author="Theo Steininger, Martin Reinecke",
       author_email="martin@mpa-garching.mpg.de",
       description="Numerical Information Field Theory",
       url="http://www.mpa-garching.mpg.de/ift/nifty/",
-      packages=find_packages(include=["nifty5", "nifty5.*"]),
+      packages=find_packages(include=["nifty6", "nifty6.*"]),
       zip_safe=True,
       license="GPLv3",
       setup_requires=['scipy'],
diff --git a/test/test_energy_gradients.py b/test/test_energy_gradients.py
index 0e6a9371f0a40ea69be5816d64a02e6fc0ec5f49..1a2910547e9da6255d6e4cfd4edd69a85e3117e6 100644
--- a/test/test_energy_gradients.py
+++ b/test/test_energy_gradients.py
@@ -18,7 +18,7 @@
 import numpy as np
 import pytest
 
-import nifty5 as ift
+import nifty6 as ift
 from itertools import product
 
 # Currently it is not possible to parametrize fixtures. But this will
diff --git a/test/test_field.py b/test/test_field.py
index a39d214da0f95317b2bb606652ad9f3687ec36fd..ac0fe753bd2faa6d2a20d4a3336c4869166c4611 100644
--- a/test/test_field.py
+++ b/test/test_field.py
@@ -19,7 +19,7 @@ import numpy as np
 import pytest
 from numpy.testing import assert_allclose, assert_equal, assert_raises
 
-import nifty5 as ift
+import nifty6 as ift
 
 pmp = pytest.mark.parametrize
 SPACES = [ift.RGSpace((4,)), ift.RGSpace((5))]
diff --git a/test/test_gaussian_energy.py b/test/test_gaussian_energy.py
index e77604ed3297fa34f1ecaeec825460ce04b9fd66..c802187ebd5aeea5d0a715ee6b8e4410432ef147 100644
--- a/test/test_gaussian_energy.py
+++ b/test/test_gaussian_energy.py
@@ -18,7 +18,7 @@
 import numpy as np
 import pytest
 
-import nifty5 as ift
+import nifty6 as ift
 
 
 def _flat_PS(k):
diff --git a/test/test_kl.py b/test/test_kl.py
index 79428c5b5c0a176109687e6ba01a06a562f72f38..965ce10c5a642cbe17a335add49a85877a4ec80e 100644
--- a/test/test_kl.py
+++ b/test/test_kl.py
@@ -17,7 +17,7 @@
 
 import numpy as np
 
-import nifty5 as ift
+import nifty6 as ift
 from numpy.testing import assert_, assert_allclose
 import pytest
 
diff --git a/test/test_linearization.py b/test/test_linearization.py
index 8ca7eeafdc98f261e63cdd9ec2822644491a5a6b..bcf7a4a261290d6c46ff008ab5816c9af744eac8 100644
--- a/test/test_linearization.py
+++ b/test/test_linearization.py
@@ -19,7 +19,7 @@ import numpy as np
 import pytest
 from numpy.testing import assert_, assert_allclose
 
-import nifty5 as ift
+import nifty6 as ift
 
 pmp = pytest.mark.parametrize
 
diff --git a/test/test_minimizers.py b/test/test_minimizers.py
index 6d98335ee73bae4db3ac5546060da0633be9a29b..d6ecd3aca53c2c7dc150cdde6739de9f35855d5e 100644
--- a/test/test_minimizers.py
+++ b/test/test_minimizers.py
@@ -21,7 +21,7 @@ import numpy as np
 import pytest
 from numpy.testing import assert_allclose, assert_equal
 
-import nifty5 as ift
+import nifty6 as ift
 
 pmp = pytest.mark.parametrize
 IC = ift.GradientNormController(tol_abs_gradnorm=1e-5, iteration_limit=1000)
diff --git a/test/test_multi_field.py b/test/test_multi_field.py
index 2ed61ee29ff23c8cd251893899b695ac2eee1a2e..fe27c5f75d1a05319303f30e56c4588faa2ce267 100644
--- a/test/test_multi_field.py
+++ b/test/test_multi_field.py
@@ -18,7 +18,7 @@
 import numpy as np
 from numpy.testing import assert_allclose, assert_equal
 
-import nifty5 as ift
+import nifty6 as ift
 
 dom = ift.makeDomain({"d1": ift.RGSpace(10)})
 
diff --git a/test/test_operators/test_adjoint.py b/test/test_operators/test_adjoint.py
index 3cfddd04d894003d06bb6dbf5e840f06f7a1a133..9586edc9d9edc90bf4c8eb101e25cd7ee86a814f 100644
--- a/test/test_operators/test_adjoint.py
+++ b/test/test_operators/test_adjoint.py
@@ -18,7 +18,7 @@
 import numpy as np
 import pytest
 
-import nifty5 as ift
+import nifty6 as ift
 
 from ..common import list2fixture
 
diff --git a/test/test_operators/test_composed_operator.py b/test/test_operators/test_composed_operator.py
index c89ca7bfb953c38e6b408e5eb9688ac73cdae21c..aa710d4298b4efa11831a0f0d3f830b81239ad2a 100644
--- a/test/test_operators/test_composed_operator.py
+++ b/test/test_operators/test_composed_operator.py
@@ -17,7 +17,7 @@
 
 from numpy.testing import assert_allclose, assert_equal
 
-import nifty5 as ift
+import nifty6 as ift
 
 from ..common import list2fixture
 
diff --git a/test/test_operators/test_convolution_operators.py b/test/test_operators/test_convolution_operators.py
index 78412cbc5ebaa06b901c5200c6c551fbb13e506a..d61baf69c4e7cb68e12309a214193d38a790d19f 100644
--- a/test/test_operators/test_convolution_operators.py
+++ b/test/test_operators/test_convolution_operators.py
@@ -17,7 +17,7 @@
 
 from numpy.testing import assert_allclose
 
-import nifty5 as ift
+import nifty6 as ift
 import numpy as np
 
 from ..common import list2fixture
diff --git a/test/test_operators/test_correlated_fields.py b/test/test_operators/test_correlated_fields.py
index fc761fb690fc237c2f71358ba0bf0f88f2162a51..c284259504ffeeb321ec1c33f65a69c3609f5da8 100644
--- a/test/test_operators/test_correlated_fields.py
+++ b/test/test_operators/test_correlated_fields.py
@@ -19,7 +19,7 @@ import pytest
 from numpy.testing import assert_allclose
 from numpy.random import seed
 
-import nifty5 as ift
+import nifty6 as ift
 
 
 @pytest.mark.parametrize('sspace', [
diff --git a/test/test_operators/test_diagonal_operator.py b/test/test_operators/test_diagonal_operator.py
index 52f104f85691aecdbdfab786ee9cf4d111a26a44..0ff501949ecc2047f605b342d03e9baba6b30752 100644
--- a/test/test_operators/test_diagonal_operator.py
+++ b/test/test_operators/test_diagonal_operator.py
@@ -17,7 +17,7 @@
 
 from numpy.testing import assert_allclose, assert_equal
 
-import nifty5 as ift
+import nifty6 as ift
 
 from ..common import list2fixture
 
diff --git a/test/test_operators/test_fft_operator.py b/test/test_operators/test_fft_operator.py
index 5cb78424f22e98ff5e0bc98e5f99d9fafeaafa03..3f9c178eac60549b05e8e94f23c87d01ff60fb5d 100644
--- a/test/test_operators/test_fft_operator.py
+++ b/test/test_operators/test_fft_operator.py
@@ -19,7 +19,7 @@ import numpy as np
 import pytest
 from numpy.testing import assert_, assert_allclose
 
-import nifty5 as ift
+import nifty6 as ift
 
 from ..common import list2fixture
 
diff --git a/test/test_operators/test_harmonic_transform_operator.py b/test/test_operators/test_harmonic_transform_operator.py
index 94aab8f537dad31fc7caf046c9245b269c74ac82..c275750da39bb6c90a65cd6e05696804e30d333a 100644
--- a/test/test_operators/test_harmonic_transform_operator.py
+++ b/test/test_operators/test_harmonic_transform_operator.py
@@ -19,7 +19,7 @@ import numpy as np
 import pytest
 from numpy.testing import assert_allclose
 
-import nifty5 as ift
+import nifty6 as ift
 
 from ..common import list2fixture
 
diff --git a/test/test_operators/test_jacobian.py b/test/test_operators/test_jacobian.py
index 1de2ac4df3aca28854abd3e7f02a904551c30d96..48a9feb21fed88e980aa840b6cf16c4464651cb1 100644
--- a/test/test_operators/test_jacobian.py
+++ b/test/test_operators/test_jacobian.py
@@ -18,7 +18,7 @@
 import numpy as np
 import pytest
 
-import nifty5 as ift
+import nifty6 as ift
 
 from ..common import list2fixture
 
diff --git a/test/test_operators/test_nft.py b/test/test_operators/test_nft.py
index 78506bb437f6ecf2a9417b2d8ca6120033a703e0..a9ff43222ec07bc723f95b6452a0529f1052ea67 100644
--- a/test/test_operators/test_nft.py
+++ b/test/test_operators/test_nft.py
@@ -19,7 +19,7 @@ import numpy as np
 import pytest
 from numpy.testing import assert_
 
-import nifty5 as ift
+import nifty6 as ift
 
 np.random.seed(40)
 
diff --git a/test/test_operators/test_regridding.py b/test/test_operators/test_regridding.py
index 9f804a6221b77e78bd9d21bf9776158f8275e598..d786f9731697f20d47e78ce0e6b486b02d9e48d4 100644
--- a/test/test_operators/test_regridding.py
+++ b/test/test_operators/test_regridding.py
@@ -17,7 +17,7 @@
 
 from numpy.testing import assert_allclose
 
-import nifty5 as ift
+import nifty6 as ift
 
 from ..common import list2fixture
 
diff --git a/test/test_operators/test_representation.py b/test/test_operators/test_representation.py
index 3bb2d8935156977ef6b9fe336258f477fa8880d0..453bbb82ecdd0eaa37c84e3cf15093958f7c581b 100644
--- a/test/test_operators/test_representation.py
+++ b/test/test_operators/test_representation.py
@@ -18,7 +18,7 @@
 import numpy as np
 import pytest
 
-import nifty5 as ift
+import nifty6 as ift
 
 from ..common import list2fixture
 
diff --git a/test/test_operators/test_simplification.py b/test/test_operators/test_simplification.py
index 36705bb12e46508435a51e6322a9f935c3bb5f69..e8732b0a6a768cbf0dab2030559f069d25714ac8 100644
--- a/test/test_operators/test_simplification.py
+++ b/test/test_operators/test_simplification.py
@@ -17,11 +17,11 @@
 
 from numpy.testing import assert_allclose, assert_equal
 
-import nifty5 as ift
+import nifty6 as ift
 
 
 def test_simplification():
-    from nifty5.operators.operator import _ConstantOperator
+    from nifty6.operators.operator import _ConstantOperator
     f1 = ift.Field.full(ift.RGSpace(10), 2.)
     op = ift.FFTOperator(f1.domain)
     _, op2 = op.simplify_for_constant_input(f1)
diff --git a/test/test_operators/test_smoothing_operator.py b/test/test_operators/test_smoothing_operator.py
index 73c7adfdbe7514d9cb5a3d3583fd55e0ff0daf6d..493a515b1c807749de4e1eb92e2846408273b27b 100644
--- a/test/test_operators/test_smoothing_operator.py
+++ b/test/test_operators/test_smoothing_operator.py
@@ -19,7 +19,7 @@ import numpy as np
 import pytest
 from numpy.testing import assert_allclose
 
-import nifty5 as ift
+import nifty6 as ift
 
 from ..common import list2fixture
 
diff --git a/test/test_operators/test_value_inserter.py b/test/test_operators/test_value_inserter.py
index 942eb3f0fc00a61ef231cb7a182324285bc4671a..e5259e1bb205a1f4e0573e60404996827f01832b 100644
--- a/test/test_operators/test_value_inserter.py
+++ b/test/test_operators/test_value_inserter.py
@@ -19,7 +19,7 @@ import numpy as np
 import pytest
 from numpy.testing import assert_
 
-import nifty5 as ift
+import nifty6 as ift
 
 
 @pytest.mark.parametrize('sp', [
diff --git a/test/test_plot.py b/test/test_plot.py
index f93d176d772d07321f5bfd2e537cd5a4d214e2d2..909ca1f20ec02964069a7f41bee2636f0a99d0f1 100644
--- a/test/test_plot.py
+++ b/test/test_plot.py
@@ -17,7 +17,7 @@
 
 import numpy as np
 
-import nifty5 as ift
+import nifty6 as ift
 
 
 def test_plots():
diff --git a/test/test_spaces/test_gl_space.py b/test/test_spaces/test_gl_space.py
index ab35c5d4fe3bd8bbf25487fa7e4985c913cd7614..76a07cad1eb2c6078142b79d03fff90718e805e4 100644
--- a/test/test_spaces/test_gl_space.py
+++ b/test/test_spaces/test_gl_space.py
@@ -22,7 +22,7 @@ import pytest
 from numpy.testing import (assert_, assert_almost_equal, assert_equal,
                            assert_raises)
 
-from nifty5 import GLSpace
+from nifty6 import GLSpace
 
 pmp = pytest.mark.parametrize
 
diff --git a/test/test_spaces/test_hp_space.py b/test/test_spaces/test_hp_space.py
index 9da92be51cd4f070c1cc862176355e2b065f4700..f0b4f5d17deba968075e1448f3aa98bb57b07c15 100644
--- a/test/test_spaces/test_hp_space.py
+++ b/test/test_spaces/test_hp_space.py
@@ -20,7 +20,7 @@ import pytest
 from numpy.testing import (assert_, assert_almost_equal, assert_equal,
                            assert_raises)
 
-from nifty5 import HPSpace
+from nifty6 import HPSpace
 
 pmp = pytest.mark.parametrize
 # [nside, expected]
diff --git a/test/test_spaces/test_interface.py b/test/test_spaces/test_interface.py
index 9ce9129e70e39803f733af3541cb4ead99afd165..71fc6c23ae875f64ea693902c8f05770e0820263 100644
--- a/test/test_spaces/test_interface.py
+++ b/test/test_spaces/test_interface.py
@@ -20,7 +20,7 @@ from types import LambdaType
 import pytest
 from numpy.testing import assert_
 
-import nifty5 as ift
+import nifty6 as ift
 
 pmp = pytest.mark.parametrize
 
diff --git a/test/test_spaces/test_lm_space.py b/test/test_spaces/test_lm_space.py
index 6ab8b4bf66c23be1771dbd8b3c34ee275fc49815..94a47c55302de3a6a9194ea6e02fbebadef2ba2e 100644
--- a/test/test_spaces/test_lm_space.py
+++ b/test/test_spaces/test_lm_space.py
@@ -19,7 +19,7 @@ import numpy as np
 import pytest
 from numpy.testing import assert_, assert_allclose, assert_equal, assert_raises
 
-import nifty5 as ift
+import nifty6 as ift
 
 pmp = pytest.mark.parametrize
 # [lmax, expected]
diff --git a/test/test_spaces/test_power_space.py b/test/test_spaces/test_power_space.py
index f9a35532441e9295d96ae4a0caff7576250e9a54..39564ecbb030fa50e6036d750f1818ee31f3bba4 100644
--- a/test/test_spaces/test_power_space.py
+++ b/test/test_spaces/test_power_space.py
@@ -21,7 +21,7 @@ import numpy as np
 import pytest
 from numpy.testing import assert_, assert_allclose, assert_equal, assert_raises
 
-import nifty5 as ift
+import nifty6 as ift
 
 pmp = pytest.mark.parametrize
 
diff --git a/test/test_spaces/test_rg_space.py b/test/test_spaces/test_rg_space.py
index 5a73485fd6a926fad0502a3f41c6d9ee07b31ea3..fdf23053a39f5fbda1fced14a25879b40f6952de 100644
--- a/test/test_spaces/test_rg_space.py
+++ b/test/test_spaces/test_rg_space.py
@@ -19,7 +19,7 @@ import numpy as np
 import pytest
 from numpy.testing import assert_, assert_allclose, assert_equal
 
-import nifty5 as ift
+import nifty6 as ift
 
 pmp = pytest.mark.parametrize
 # [shape, distances, harmonic, expected]
diff --git a/test/test_sugar.py b/test/test_sugar.py
index e354723b1470d91808d5932d8d1f700967abf651..1264cbbd8df38cc7540a8f06d2f2ce482efd66dd 100644
--- a/test/test_sugar.py
+++ b/test/test_sugar.py
@@ -18,7 +18,7 @@
 import numpy as np
 from numpy.testing import assert_equal
 
-import nifty5 as ift
+import nifty6 as ift
 
 
 def test_get_signal_variance():