This is Exercise 2.28 from Propositional and Predicate Calculus: A Model of Argument by Derek Goldrei:
For a formula built up using the connectives $\neg,\land,\lor$, let $\phi^*$ be constructed by replacing each propositional variable in $\phi$ by its negation.
(a) For any truth assignment $v$, let $v^*$ be the truth assignment that gives each prop. variable the opposite value to that given by $v$, i.e. $$v^*=\begin{cases} T&\ \text{if}\ v(p)=F\\ F&\ \text{if}\ v(p)=T, \end{cases}$$ for all prop. variables $p$. Show that $v(\phi)=v^*(\phi^*)$.
(b) (i) Use the result of part (a) to show that $\phi$ is a tautology iff $\phi^*$ is a tautology.
$\hspace{25mu}$(ii) Is it true that $\phi$ is a contradiction iff $\phi^*$ is a contradiction?
Related: Same question without (b).
I have already done part (a) by strong induction on the length of $\phi$:
For every $n\in\mathbb{N}$, let $P(n)$ be the statement. $P(0)$ is clearly true. Suppose $P(i)$ is true for $0\le i\le k$. Let $\phi$ be a formula of length $k+1$, then $\phi$ is one of the three forms $\neg\theta$, $(\theta\land\psi)$, or $(\theta\lor\psi)$. Suppose $\phi$ is of the form $\neg\theta$. $\theta$ has length $k$ so by $P(k)$, $v(\theta)=v^*(\theta^*)$. Suppose for any truth assignment $v$, $v(\neg\theta)=T$, then $v(\theta)=F=v^*(\theta^*)$. Since $v$ and $v^*$ are truth assignments, $v(\neg\theta)=T=v^*(\neg\theta^*)$ and $P(k+1)$ is true; similarly if $v^*(\neg\theta^*)=T$. The cases for $\phi$ of the remaining two forms are similar. By strong induction, for every $n\in\mathbb{N}$, $P(n)$ is true.
I'm having trouble with part (b). What I've done is:
Suppose $\phi$ is a tautology, then for any truth assignment $v$, $v(\phi)=T$. By (a), $v^*(\phi^*)=T$. Since $v$ is any truth assignment, $v^*$ is also any truth assignment (for any specific $v^*$ we can choose the corresponding $v$), so $\phi^*$ is a tautology. And likewise for (ii).
Alternatively, it seems like if $\phi$ is a tautology, it must be of the form $(\theta\lor\neg\theta)$, so by (a), $v(\theta)=v^*(\theta^*)$, by definition of truth assignment, $v(\neg\theta)=v^*(\neg\theta^*)$, and therefore $v((\theta\lor\neg\theta))=v((\theta^*\lor\neg\theta^*))=v(\phi^*)$. And likewise for $\phi$ contradiction of the form $(\theta\land\neg\theta)$.
I'm not confident either method is correct, what am I missing here?