I've been thinking about a framework for really impossible worlds. The first framework I think of is this. A world w is a mapping (basically, a function, except that the propositions don't form a set) from propositions to truth values. Thus, if w0 is the actual world, w0(<the sky is blue>)=T and w0(<2+2=5>)=F. But there will be a world w with all sorts of weird truth assignments, for instance where the conjunction is true but the conjuncts are false, or where p is false but its negation is also false.
But I then wondered if this captures the full range of alethic impossibilities. What about impossibilities like this: Worlds at which <2+2=4> has no truth value? Worlds at which every proposition is both true and false? To handle such options it's tempting to loosen the requirement that w is a mapping to the requirement that it be a relation. Thus, some propositions might not be w-related to any truth value and some propositions might be w-related to multiple truth values. But we can get weirder than that! What about worlds w at which the truth value of <2+2=4> is Sherlock Holmes? Nonsense, you say? But no more nonsense than something being both true and false. So perhaps w should be a relation not just between propositions and truth values, but propositions and any objects at all, possible or not. But even that doesn't exhaust the options of truth assignments. For what about a world where truth is assigned to every cat and to no proposition, or where instead of <2+2=4> having truth, truth has <2+2=4>? So perhaps worlds are just relations between objects, impossible or possible?
Of course, it feels like we've lost grip on meaningfulness somewhere in the last paragraph. But it's not clear where. My suggestion now is that none of the complications are needed. In fact, even the initial framework where a world is a truth assignment may be needlessly complicated. Let's take instead the simpler framework that a world is a collection of propositions.
Thus, p is true at w if and only if p is a member of w. And p is false at w if and only if ~p is a member of w.
But what about the bizarre options? On this framework, for any world w, either <2+2=4> is a member of w and hence true at w or it's not. What about the possibility that it is both true and non-true at w? I think the framework can handle all the bizarre possibilities provided that we understand them as world-internal. What is true at w is a question external to w, a question to be settled by the classical logic that is actually correct. Either p is true at w or it's not, and it can't be both true and non-true. But, nonetheless, although while it can't be that p is true at w and not true at w, it can be that p is true at w and p is false at w (just suppose both p and ~p are members of w). So that p is false at w does not imply the denial of the claim that p is true at w.
All the bizarreness, however, is to be found in world-internal claims. Let's say that p is (not) true in w provided that the proposition <p is (not) true> is true at w (in the external sense), i.e., <p is true> is a member of w. Likewise, say that p is (not) false in w provided that <p is (not) false> is true at w. And so on: in general, S(p) in w provided that <S(p)> is true at w. Then while truth-at w is relatively tame, truth- and falsity-in w can be utterly wild. We can have p true in w and p not true in w. We can have a world w in which <2+2=4> has the truth value Benjamin Franklin and is also false and true. There will be a world in which ~(2+2=4) but it is nonetheless true that 2+2=4. And so on. It's all a matter of getting the scope of the world-relativizing operator right.