coq


Split conjunction goal into subgoals


Consider the following toy exercise:
Theorem swap_id: forall (m n : nat), m = n -> (m, n) = (n, m).
Proof.
intros m n H.
At this point I have the following:
1 subgoal
m, n : nat
H : m = n
______________________________________(1/1)
(m, n) = (n, m)
I would like to split the goal into two subgoals, m = n and n = m. Is there a tactic which does that?
Solve using the f_equal tactic:
Theorem test: forall (m n : nat), m = n -> (m, n) = (n, m).
Proof.
intros m n H. f_equal.
With state:
2 subgoals
m, n : nat
H : m = n
______________________________________(1/2)
m = n
______________________________________(2/2)
n = m

Related Links

Coq eapply generates a goal with a question mark while proving existence of a function
Universe inconsistency (because of strict positivity restriction?)
How do you selectively simplify arguments to each time a function is called, without evaluting the function itself?
Why is it impossible to perform induction on a term that is used in conclusion?
How to destruct a exist in goal for coq
Why do Coq recursion principles pass along both the substructure and the result of the recursive call?
Stronger completeness axiom for real numbers in Coq
Subtyping in Coq
When is the first input to `list_rec` not a constant function?
what does the colon greater than sign mean in coq
Prove that a sequence of steps terminates
How to leverage auto's searching and hint databases in custom tactics?
How to use auto with repeat in custom tactics?
How to use Coq GenericMinMax to prove facts about the reals
Coq modular arithmetic
Break “forall” hypothesis with conjunctions up into components?

Categories

HOME
java
netbeans
azure-data-factory
gremlin
mfc
plot
session
at-command
cakephp-2.5
gps
retrofit
datastax-java-driver
swagger-ui
virtualization
slick-slider
google-translate
gorm
spring-xd
usergrid
django-simple-history
clojurescript
reverse-proxy
web-sql
cultureinfo
emgucv
virtualdub
tooltipster
publish
r-raster
tinymce-4
react-chartjs
junit5
yadcf
google-qpx-express-api
repo
openoffice.org
http-digest
simplexml
restlet
retina-display
streamsets
reportbuilder
squib
android-tabhost
sql-server-agent
http-live-streaming
estimote
vao
node-sass
smartcontracts
pnotify
python-webbrowser
dotnetzip
statsd
elgg
gcsfuse
jspdf-autotable
synchronous
ctest
merge-conflict-resolution
mongocsharpdriver
sdf
yaws
suffix-tree
pagerank
unity-networking
spim
t4mvc
angular-leaflet-directive
0xdbe
ios9.1
graph-api-explorer
device-orientation
formatjs
rebol3
system.net.webexception
html5-notifications
gnu-smalltalk
dir
dotnetnuke-5
simba
dice
runas
multipage
onsubmit
bubble-chart
reddot
file-comparison
celltable
floating
telerik-scheduler
html-input
gallio
web-application-design
gamma
dentrix
rescale
firefox-5
uimenucontroller
xetex
privilege
phonon
grid-system

Resources

Mobile Apps Dev
Database Users
javascript
java
csharp
php
android
MS Developer
developer works
python
ios
c
html
jquery
RDBMS discuss
Cloud Virtualization
Database Dev&Adm
javascript
java
csharp
php
python
android
jquery
ruby
ios
html
Mobile App
Mobile App
Mobile App