A proposition by the definition below has to be necessarily true. In the book by Kenneth H.Rosen the definition is-

A proposition is a declarative sentence(that is a sentence which declares a FACT)which is either true or false but not both.

There are 2 facets to my doubt-
1.The word 'fact' in all its possible senses is something which is necessarily true,thus a proposition has to be true by definition.
2.what kind of sentence can be both true and false,the 'but not both' portion seems superfluous.
Could someone shed some light on this?I have gone through similar questions on here but they do not answer this exact question.
 A: A statement that declares a fact is different than a statement which is a fact. For instance, I declare the fact that the earth is flat. That is a factual declaration. It is a false one. 
I agree that it may be prone to particular individual interpretations of what it means to declare a fact. In any case, I suggest not to waste too much time on the word 'fact' here, and simply understand that a statement must be a factual declaration. Something that has a well-defined, and unique, truth value. For instance, "Mars has precisely one billion stones on its surface at the time of writing this answer" is a factual statement, it's either true or false, but we will never ever know its truth value. More mathematical examples include: There are infinitely many primes numbers (a true statement), there are infinitely many even prime numbers (a false statement), and there are infinitely many twin primes (a statement which we currently do not know if it's true or false). 
Now, as for explicitly requiring that a statement only has one truth value, while it is not easy to come up with such situations, they do occur. For instance, the utterance "this statement is true" can consistently be assigned the truth value True and False at the same time. Its twin, the utterance "this statement is false" is a famous example of an innocent looking utterance that seems factual but can't be assigned any truth value at all. So, in propositional/predicate logic we simply banish such problematic utterances out of the language we use to talk about mathematics. 
It should be noted though that the above is the case for what is known as classical logic or Aristotelean logic. There are other logical systems, notably paraconsistent logic, which allows for statements which are both true and false at the same time. However, the vast majority of mathematicians assume classical logic. Another branch of logic which is gaining ground, particularly in the context of computer science, is constructivism. It does not allow statement both true and false, but it also does not demand that each statement is either true or false, but rather more truth values are allowed. 
A: 
1.The word 'fact' in all its possible senses is something which is necessarily true,thus a proposition has to be true by definition. 



*

*Its better to define 'fact' as any sentence which has a truth
value, rather than one that is necessarily true. 
The definition in Kenneth H.Rosen's book appears to treat the word this
way. It refers to 'fact' as a sentence which is either true or
false but not both. 
On a side note, in logic the term 'sentence', usually refers to a
formula which has a truth value. Its use here gives some indication
to what has been said. 
You are correct however, that if a 'fact' were defined as anything
that is necessarily true, then given the definition from Kenneth
H.Rosen's book, a proposition would have to be true.

2.what kind of sentence can be both true and false,the 'but not both' portion seems superfluous.



*

*In boolean logic, no sentence can be both true and false . So it
is superfluous to say 'but not both' if you are already in the
context of boolean logic.
However there exist other logics, which don't disallow propositions
to be both true and false. Without context, the portion at the end
is necessary to distinguish from these other logics. If the context
has already been given, this portion may be there to open your mind to
the possibility of a proposition having these properties.
A: *

*Answering to your point 1.


Let's declare a fact:
1=2
This a declarative sentence, that is a sentence of which you ask whether it is true or false and in this case this fact is false.
This sentence:
$\textrm{Is } 1=2\textrm{?}$
is not declarative, that is it is a sentence that is not a fact.
It does not make sense asking if the question "$\textrm{Is } 1=2\textrm{?}$" is true or false (it is a question, not the fact begin asked in the question; hope you can appreciate the difference).


*

*Answering to your point 2.


$1 \textrm{ is much lower than }2$
This is a declarative sentence, that is it makes sense asking whether it is true or false.
You can have a truthfulness defined this way:
if $x<1.5$ then $x$ is much lower than $2$
if $x>0.5$ then $x$ is not much lower than $2$
In this case this declarative statement is true and false: so it is not a fact.
