Understanding the Proof about the Uniqueness of $d$ operator Munkres defines $d$ -- the generalized differential operator -- by showing it characterized by the following properties:

Let $A \subset \mathbb{R}^n$ open and $\Omega^k(A)$ be the linear space of $C^\infty$ k-forms on $A$. $d$ is the unique linear transformation such that:
  $$d:\Omega^k(A) \rightarrow \Omega^{k+1}(A)$$ defined for $k \geq 0$, such that:
  
  
*
  
*If $f$ is a 0-form, then $df$ is the 1-form $$df(x)(x;v) = Df(x) \cdot v$$
  
*If $\omega$ nad $\nu$ are forms of orders $k$ and $l$, resp, then $$d(\omega \wedge \nu) = d\omega \wedge \nu + (-1)^k\omega \wedge d\nu$$
  
*For every form $\omega$ $$d(d\omega)=0$$

Below I outline his proof. My question: why is this work sufficient to show the claim? I'm having trouble following his logic. I provide more detail below.
Proof Steps Sketch:

  
*
  
*Verifies uniqueness in two steps. First he shows that conditions two and three imply that for any forms $\omega_1,...\omega_k$ we have: $$d(d\omega_1\wedge ...\wedge d\omega_k)=0$$ then he shows that any $k$-form is determined by the value of $d$ on $0$-forms. To complete this second task he says: "Since $d$ is linear, it suffices to consider the case $\omega = f dx_I$" then does a computation to show $d\omega = df \wedge dx_I$.
  

Why is he checking all this stuff? The only way I know to check uniqueness is to start with two different elements "of the same type" and then show the operator sends them to the same value
Also he's checking assuming linearity of $d$ before proving it, below. Isn't that incorrect?
Also in the computation in the second part of the step, he starts $$d\omega = d(f dx_I) = d(f \wedge dx_I) = ...$$ -- this appearance of a wedge in the last step is mysterious to me.


  
*Check that given k-form $\omega$, $d\omega$ is $C^{\infty}$ and $d$ is linear on $k$-forms
  
*If $J$ is an abtrirary k-tuple of integers then $$d(f \wedge dx_J) = df \wedge dx_J$$

Didn't he show this in the second part of step one??


  
*Verify property 2 in special case
  
*Verify property 2 in general.
  
*Verify property 3 in special case.
  
*Verify property 3 in general.
  

Where's the verification of property 1, was that accomplished somewhere without being explicitly mentioned?
 A: As far as I understand, the theorem is equivalent to

There exists exactly one linear transformation $d$ on $\Omega^*(A)$ that satisfies the three statements (1, 2, 3).

That is, we will actually assume $4$ conditions: 1, 2, 3, and that $d$ is linear. So that answer your questions he's checking assuming linearity of d before proving it.
Now, back to the logic, there are three key arguments:


*

*$d$ is uniquely (and linearly) defined on the $0$-forms by Property 1.

*$d$, if exists, is uniquely determined by its values on the $0$-forms. 

*Finally, show the existence of $d$ by construction: Assuming $d$ is defined (linearly) on the $0$-forms, using Property 2 with $l=1$ to extend $d$ linearly to all the $k$-forms by induction on $k$.
Argument 1 should be clear. Arguments 2 and 3 are somewhat overlapping, but the high level proof is similar to the theorem

A linear transformation $f:V\to W$ is uniquely determined by its values on a basis of $V$.

That is, we use the given properties to extend the operator linearly from its values on a smaller subset. Then the uniqueness (Statement 2) implicitly follows from the construction.
As stated, the operator is constructed by induction on $k$:


*

*$d$ is already defined for $0$-form (Property 1).

*Assume inductively that $d$ is defined on all $l$-forms with $l\le k$ that satisfies Properties 2,3 for all $l$-forms. We will:


*

*construct $d$ (linearly) on the $(k+1)$-forms

*verify Properties 2 for all $l$-forms with $l\le k+1$.

*verify Properties 3 for all $l$-forms with $l\le k+1$.



Step 2. in your proof sketch is to prove the first point above. 
Step 3 is to show second point for a special case: $f\wedge dx_J$ has the form $\omega \wedge \nu$ for $\omega=f$ is a $0$-form, and $\nu=dx_J$ is an element of the standard basis of $\Omega^k(A)$, i.e, a $k$-form.
Step 4, 5 in proof sketch are to prove the second point. 
Step 6, 7 are to prove the third point.
I hope that explains the logic of the proof.
For your other question: this appearance of a wedge in the last step is mysterious to me: Is it not the definition of the wedge product that
$$f\wedge \omega = f\omega$$
for any $k$-form $\omega$ and any function $f$?
